Podcasts about Zend Framework

  • 23PODCASTS
  • 54EPISODES
  • 39mAVG DURATION
  • ?INFREQUENT EPISODES
  • Nov 23, 2022LATEST

POPULARITY

20172018201920202021202220232024


Best podcasts about Zend Framework

Latest podcast episodes about Zend Framework

Screaming in the Cloud
The Art and Science of Database Innovation with Andi Gutmans

Screaming in the Cloud

Play Episode Listen Later Nov 23, 2022 37:07


About AndiAndi Gutmans is the General Manager and Vice President for Databases at Google. Andi's focus is on building, managing and scaling the most innovative database services to deliver the industry's leading data platform for businesses. Before joining Google, Andi was VP Analytics at AWS running services such as Amazon Redshift. Before his tenure at AWS, Andi served as CEO and co-founder of Zend Technologies, the commercial backer of open-source PHP.Andi has over 20 years of experience as an open source contributor and leader. He co-authored open source PHP. He is an emeritus member of the Apache Software Foundation and served on the Eclipse Foundation's board of directors. He holds a bachelor's degree in Computer Science from the Technion, Israel Institute of Technology.Links Referenced: LinkedIn: https://www.linkedin.com/in/andigutmans/ Twitter: https://twitter.com/andigutmans TranscriptAnnouncer: Hello, and welcome to Screaming in the Cloud with your host, Chief Cloud Economist at The Duckbill Group, Corey Quinn. This weekly show features conversations with people doing interesting work in the world of cloud, thoughtful commentary on the state of the technical world, and ridiculous titles for which Corey refuses to apologize. This is Screaming in the Cloud.Corey: This episode is sponsored in part by our friends at Sysdig. Sysdig secures your cloud from source to run. They believe, as do I, that DevOps and security are inextricably linked. If you wanna learn more about how they view this, check out their blog, it's definitely worth the read. To learn more about how they are absolutely getting it right from where I sit, visit Sysdig.com and tell them that I sent you. That's S Y S D I G.com. And my thanks to them for their continued support of this ridiculous nonsense.Corey: Welcome to Screaming in the Cloud. I'm Corey Quinn. This promoted episode is brought to us by our friends at Google Cloud, and in so doing, they have gotten a guest to appear on this show that I have been low-key trying to get here for a number of years. Andi Gutmans is VP and GM of Databases at Google Cloud. Andi, thank you for joining me.Andi: Corey, thanks so much for having me.Corey: I have to begin with the obvious. Given that one of my personal passion projects is misusing every cloud service I possibly can as a database, where do you start and where do you stop as far as saying, “Yes, that's a database,” so it rolls up to me and, “No, that's not a database, so someone else can deal with the nonsense?”Andi: I'm in charge of the operational databases, so that includes both the managed third-party databases such as MySQL, Postgres, SQL Server, and then also the cloud-first databases, such as Spanner, Big Table, Firestore, and AlloyDB. So, I suggest that's where you start because those are all awesome services. And then what doesn't fall underneath, kind of, that purview are things like BigQuery, which is an analytics, you know, data warehouse, and other analytics engines. And of course, there's always folks who bring in their favorite, maybe, lesser-known or less popular database and self-manage it on GCE, on Compute.Corey: Before you wound up at Google Cloud, you spent roughly four years at AWS as VP of Analytics, which is, again, one of those very hazy type of things. Where does it start? Where does it stop? It's not at all clear from the outside. But even before that, you were, I guess, something of a legendary figure, which I know is always a weird thing for people to hear.But you were partially at least responsible for the Zend Framework in the PHP world, which I didn't realize what the heck that was, despite supporting it in production at a couple of jobs, until after I, for better or worse, was no longer trusted to support production environments anymore. Which, honestly, if you can get out, I'm a big proponent of doing that. You sleep so much better without a pager. How did you go from programming languages all the way on over to databases? It just seems like a very odd mix.Andi: Yeah. No, that's a great question. So, I was one of the core developers of PHP, and you know, I had been in the PHP community for quite some time. I also helped ideate. The Zend Framework, which was the company that, you know, I co-founded Zend Technologies was kind of the company behind PHP.So, like Red Hat supports Linux commercially, we supported PHP. And I was very much focused on developers, programming languages, frameworks, IDEs, and that was, you know, really exciting. I had also done quite a bit of work on interoperability with databases, right, because behind every application, there's a database, and so a lot of what we focused on is a great connectivity to MySQL, to Postgres, to other databases, and I got to kind of learn the database world from the outside from the application builders. We sold our company in I think it was 2015 and so I had to kind of figure out what's next. And so, one option would have been, hey, stay in programming languages, but what I learned over the many years that I worked with application developers is that there's a huge amount of value in data.And frankly, I'm a very curious person; I always like to learn, so there was this opportunity to join Amazon, to join the non-relational database side, and take myself completely out of my comfort zone. And actually, I joined AWS to help build the graph database Amazon Neptune, which was even more out of my comfort zone than even probably a relational database. So, I kind of like to do different things and so I joined and I had to learn, you know how to build a database pretty much from the ground up. I mean, of course, I didn't do the coding, but I had to learn enough to be dangerous, and so I worked on a bunch of non-relational databases there such as, you know, Neptune, Redis, Elasticsearch, DynamoDB Accelerator. And then there was the opportunity for me to actually move over from non-relational databases to analytics, which was another way to get myself out of my comfort zone.And so, I moved to run the analytic space, which included services like Redshift, like EMR, Athena, you name it. So, that was just a great experience for me where I got to work with a lot of awesome people and learn a lot. And then the opportunity arose to join Google and actually run the Google transactional databases including their older relational databases. And by the way, my job actually have two jobs. One job is running Spanner and Big Table for Google itself—meaning, you know, search ads and YouTube and everything runs on these databases—and then the second job is actually running external-facing databases for external customers.Corey: How alike are those two? Is it effectively the exact same thing, just with different API endpoints? Are they two completely separate universes? It's always unclear from the outside when looking at large companies that effectively eat versions of their own dog food, where their internal usage of these things starts and stops.Andi: So, great question. So, Cloud Spanner and Cloud Big Table do actually use the internal Spanner and Big Table. So, at the core, it's exactly the same engine, the same runtime, same storage, and everything. However, you know, kind of, internally, the way we built the database APIs was kind of good for scrappy, you know, Google engineers, and you know, folks are kind of are okay, learning how to fit into the Google ecosystem, but when we needed to make this work for enterprise customers, we needed a cleaner APIs, we needed authentication that was an external, right, and so on, so forth. So, think about we had to add an additional set of APIs on top of it, and management, right, to really make these engines accessible to the external world.So, it's running the same engine under the hood, but it is a different set of APIs, and a big part of our focus is continuing to expose to enterprise customers all the goodness that we have on the internal system. So, it's really about taking these very, very unique differentiated databases and democratizing access to them to anyone who wants to.Corey: I'm curious to get your position on the idea that seems to be playing it's—I guess, a battle that's been playing itself out in a number of different customer conversations. And that is, I guess, the theoretical decision between, do we go towards general-purpose databases and more or less treat every problem as a nail in search of a hammer or do you decide that every workload gets its own custom database that aligns the best with that particular workload? There are trade-offs in either direction, but I'm curious where you land on that given that you tend to see a lot more of it than I do.Andi: No, that's a great question. And you know, just for the viewers who maybe aren't aware, there's kind of two extreme points of view, right? There's one point of view that says, purpose-built for everything, like, every specific pattern, like, build bespoke databases, it's kind of a best-of-breed approach. The problem with that approach is it becomes extremely complex for customers, right? Extremely complex to decide what to use, they might need to use multiple for the same application, and so that can be a bit daunting as a customer. And frankly, there's kind of a law of diminishing returns at some point.Corey: Absolutely. I don't know what the DBA role of the future is, but I don't think anyone really wants it to be, “Oh, yeah. We're deciding which one of these three dozen manage database services is the exact right fit for each and every individual workload.” I mean, at some point it feels like certain cloud providers believe that not only every workload should have its own database, but almost every workload should have its own database service. It's at some point, you're allowed to say no and stop building these completely, what feel like to me, Byzantine, esoteric database engines that don't seem to have broad applicability to a whole lot of problems.Andi: Exactly, exactly. And maybe the other extreme is what folks often talk about as multi-model where you say, like, “Hey, I'm going to have a single storage engine and then map onto that the relational model, the document model, the graph model, and so on.” I think what we tend to see is if you go too generic, you also start having performance issues, you may not be getting the right level of abilities and trade-offs around consistency, and replication, and so on. So, I would say Google, like, we're taking a very pragmatic approach where we're saying, “You know what? We're not going to solve all of customer problems with a single database, but we're also not going to have two dozen.” Right?So, we're basically saying, “Hey, let's understand that the main characteristics of the workloads that our customers need to address, build the best services around those.” You know, obviously, over time, we continue to enhance what we have to fit additional models. And then frankly, we have a really awesome partner ecosystem on Google Cloud where if someone really wants a very specialized database, you know, we also have great partners that they can use on Google Cloud and get great support and, you know, get the rest of the benefits of the platform.Corey: I'm very curious to get your take on a pattern that I've seen alluded to by basically every vendor out there except the couple of very obvious ones for whom it does not serve their particular vested interests, which is that there's a recurring narrative that customers are demanding open-source databases for their workloads. And when you hear that, at least, people who came up the way that I did, spending entirely too much time on Freenode, back when that was not a deeply problematic statement in and of itself, where, yes, we're open-source, I guess, zealots is probably the best terminology, and yeah, businesses are demanding to participate in the open-source ecosystem. Here in reality, what I see is not ideological purity or anything like that and much more to do with, “Yeah, we don't like having a single commercial vendor for our databases that basically plays the insert quarter to continue dance whenever we're trying to wind up doing something new. We want the ability to not have licensing constraints around when, where, how, and how quickly we can run databases.” That's what I hear when customers are actually talking about open-source versus proprietary databases. Is that what you see or do you think that plays out differently? Because let's be clear, you do have a number of database services that you offer that are not open-source, but are also absolutely not tied to weird licensing restrictions either?Andi: That's a great question, and I think for years now, customers have been in a difficult spot because the legacy proprietary database vendors, you know, knew how sticky the database is, and so as a result, you know, the prices often went up and was not easy for customers to kind of manage costs and agility and so on. But I would say that's always been somewhat of a concern. I think what I'm seeing changing and happening differently now is as customers are moving into the cloud and they want to run hybrid cloud, they want to run multi-cloud, they need to prove to their regulator that it can do a stressed exit, right, open-source is not just about reducing cost, it's really about flexibility and kind of being in control of when and where you can run the workloads. So, I think what we're really seeing now is a significant surge of customers who are trying to get off legacy proprietary database and really kind of move to open APIs, right, because they need that freedom. And that freedom is far more important to them than even the cost element.And what's really interesting is, you know, a lot of these are the decision-makers in these enterprises, not just the technical folks. Like, to your point, it's not just open-source advocates, right? It's really the business people who understand they need the flexibility. And by the way, even the regulators are asking them to show that they can flexibly move their workloads as they need to. So, we're seeing a huge interest there and, as you said, like, some of our services, you know, are open-source-based services, some of them are not.Like, take Spanner, as an example, it is heavily tied to how we build our infrastructure and how we build our systems. Like, I would say, it's almost impossible to open-source Spanner, but what we've done is we've basically embraced open APIs and made sure if a customer uses these systems, we're giving them control of when and where they want to run their workloads. So, for example, Big Table has an HBase API; Spanner now has a Postgres interface. So, our goal is really to give customers as much flexibility and also not lock them into Google Cloud. Like, we want them to be able to move out of Google Cloud so they have control of their destiny.Corey: I'm curious to know what you see happening in the real world because I can sit here and come up with a bunch of very well-thought-out logical reasons to go towards or away from certain patterns, but I spent years building things myself. I know how it works, you grab the closest thing handy and throw it in and we all know that there is nothing so permanent as a temporary fix. Like, that thing is load-bearing and you'll retire with that thing still in place. In the idealized world, I don't think that I would want to take a dependency on something like—easy example—Spanner or AlloyDB because despite the fact that they have Postgres-squeal—yes, that's how I pronounce it—compatibility, the capabilities of what they're able to do under the hood far exceed and outstrip whatever you're going to be able to build yourself or get anywhere else. So, there's a dataflow architectural dependency lock-in, despite the fact that it is at least on its face, Postgres compatible. Counterpoint, does that actually matter to customers in what you are seeing?Andi: I think it's a great question. I'll give you a couple of data points. I mean, first of all, even if you take a complete open-source product, right, running them in different clouds, different on-premises environments, and so on, fundamentally, you will have some differences in performance characteristics, availability characteristics, and so on. So, the truth is, even if you use open-source, right, you're not going to get a hundred percent of the same characteristics where you run that. But that said, you still have the freedom of movement, and with I would say and not a huge amount of engineering investment, right, you're going to make sure you can run that workload elsewhere.I kind of think of Spanner in the similar way where yes, I mean, you're going to get all those benefits of Spanner that you can't get anywhere else, like unlimited scale, global consistency, right, no maintenance downtime, five-nines availability, like, you can't really get that anywhere else. That said, not every application necessarily needs it. And you still have that option, right, that if you need to, or want to, or we're not giving you a reasonable price or reasonable price performance, but we're starting to neglect you as a customer—which of course we wouldn't, but let's just say hypothetically, that you know, that could happen—that you still had a way to basically go and run this elsewhere. Now, I'd also want to talk about some of the upsides something like Spanner gives you. Because you talked about, you want to be able to just grab a few things, build something quickly, and then, you know, you don't want to be stuck.The counterpoint to that is with Spanner, you can start really, really small, and then let's say you're a gaming studio, you know, you're building ten titles hoping that one of them is going to take off. So, you can build ten of those, you know, with very minimal spend on Spanner and if one takes off overnight, it's really only the database where you don't have to go and re-architect the application; it's going to scale as big as you need it to. And so, it does enable a lot of this innovation and a lot of cost management as you try to get to that overnight success.Corey: Yeah, overnight success. I always love that approach. It's one of those, “Yeah, I became an overnight success after only ten short years.” It becomes this idea people believe it's in fits and starts, but then you see, I guess, on some level, the other side of it where it's a lot of showing up and doing the work. I have to confess, I didn't do a whole lot of admin work in my production years that touched databases because I have an aura and I'm unlucky, and it turns out that when you blow away some web servers, everyone can laugh and we'll reprovision stateless things.Get too close to the data warehouse, for example, and you don't really have a company left anymore. And of course, in the world of finance that I came out of, transactional integrity is also very much a thing. A question that I had [centers 00:17:51] really around one of the predictions you gave recently at Google Cloud Next, which is your prediction for the future is that transactional and analytical workloads from a database perspective will converge. What's that based on?Andi: You know, I think we're really moving from a world where customers are trying to make real-time decisions, right? If there's model drift from an AI and ML perspective, want to be able to retrain their models as quickly as possible. So, everything is fast moving into streaming. And I think what you're starting to see is, you know, customers don't have that time to wait for analyzing their transactional data. Like in the past, you do a batch job, you know, once a day or once an hour, you know, move the data from your transactional system to analytical system, but that's just not how it is always-on businesses run anymore, and they want to have those real-time insights.So, I do think that what you're going to see is transactional systems more and more building analytical capabilities, analytical systems building, and more transactional, and then ultimately, cloud platform providers like us helping fill that gap and really making data movement seamless across transactional analytical, and even AI and ML workloads. And so, that's an area that I think is a big opportunity. I also think that Google is best positioned to solve that problem.Corey: Forget everything you know about SSH and try Tailscale. Imagine if you didn't need to manage PKI or rotate SSH keys every time someone leaves. That'd be pretty sweet, wouldn't it? With Tailscale SSH, you can do exactly that. Tailscale gives each server and user device a node key to connect to its VPN, and it uses the same node key to authorize and authenticate SSH.Basically you're SSHing the same way you manage access to your app. What's the benefit here? Built-in key rotation, permissions as code, connectivity between any two devices, reduce latency, and there's a lot more, but there's a time limit here. You can also ask users to reauthenticate for that extra bit of security. Sounds expensive?Nope, I wish it were. Tailscale is completely free for personal use on up to 20 devices. To learn more, visit snark.cloud/tailscale. Again, that's snark.cloud/tailscaleCorey: On some level, I've found that, at least in my own work, that once I wind up using a database for something, I'm inclined to try and stuff as many other things into that database as I possibly can just because getting a whole second data store, taking a dependency on it for any given workload tends to be a little bit on the, I guess, challenging side. Easy example of this. I've talked about it previously in various places, but I was talking to one of your colleagues, [Sarah Ellis 00:19:48], who wound up at one point making a joke that I, of course, took way too far. Long story short, I built a Twitter bot on top of Google Cloud Functions that every time the Azure brand account tweets, it simply quote-tweets that translates their tweet into all caps, and then puts a boomer-style statement in front of it if there's room. This account is @cloudboomer.Now, the hard part that I had while doing this is everything stateless works super well. Where do I wind up storing the ID of the last tweet that it saw on his previous run? And I was fourth and inches from just saying, “Well, I'm already using Twitter so why don't we use Twitter as a database?” Because everything's a database if you're either good enough or bad enough at programming. And instead, I decided, okay, we'll try this Firebase thing first.And I don't know if it's Firestore, or Datastore or whatever it's called these days, but once I wrap my head around it incredibly effective, very fast to get up and running, and I feel like I made at least a good decision, for once in my life, involving something touching databases. But it's hard. I feel like I'm consistently drawn toward the thing I'm already using as a default database. I can't shake the feeling that that's the wrong direction.Andi: I don't think it's necessarily wrong. I mean, I think, you know, with Firebase and Firestore, that combination is just extremely easy and quick to build awesome mobile applications. And actually, you can build mobile applications without a middle tier which is probably what attracted you to that. So, we just see, you know, huge amount of developers and applications. We have over 4 million databases in Firestore with just developers building these applications, especially mobile-first applications. So, I think, you know, if you can get your job done and get it done effectively, absolutely stick to them.And by the way, one thing a lot of people don't know about Firestore is it's actually running on Spanner infrastructure, so Firestore has the same five-nines availability, no maintenance downtime, and so on, that has Spanner, and the same kind of ability to scale. So, it's not just that it's quick, it will actually scale as much as you need it to and be as available as you need it to. So, that's on that piece. I think, though, to the same point, you know, there's other databases that we're then trying to make sure kind of also extend their usage beyond what they've traditionally done. So, you know, for example, we announced AlloyDB, which I kind of call it Postgres on steroids, we added analytical capabilities to this transactional database so that as customers do have more data in their transactional database, as opposed to having to go somewhere else to analyze it, they can actually do real-time analytics within that same database and it can actually do up to 100 times faster analytics than open-source Postgres.So, I would say both Firestore and AlloyDB, are kind of good examples of if it works for you, right, we'll also continue to make investments so the amount of use cases you can use these databases for continues to expand over time.Corey: One of the weird things that I noticed just looking around this entire ecosystem of databases—and you've been in this space long enough to, presumably, have seen the same type of evolution—back when I was transiting between different companies a fair bit, sometimes because I was consulting and other times because I'm one of the greatest in the world at getting myself fired from jobs based upon my personality, I found that the default standard was always, “Oh, whatever the database is going to be, it started off as MySQL and then eventually pivots into something else when that starts falling down.” These days, I can't shake the feeling that almost everywhere I look, Postgres is the answer instead. What changed? What did I miss in the ecosystem that's driving that renaissance, for lack of a better term?Andi: That's a great question. And, you know, I have been involved in—I'm going to date myself a bit—but in PHP since 1997, pretty much, and one of the things we kind of did is we build a really good connector to MySQL—and you know, I don't know if you remember, before MySQL, there was MS SQL. So, the MySQL API actually came from MS SQL—and we bundled the MySQL driver with PHP. And so, kind of that LAMP stack really took off. And kind of to your point, you know, the default in the web, right, was like, you're going to start with MySQL because it was super easy to use, just fun to use.By the way, I actually wrote—co-authored—the tab completion in the MySQL client. So like, a lot of these kinds of, you know, fun, simple ways of using MySQL were there, and frankly, was super fast, right? And so, kind of those fast reads and everything, it just was great for web and for content. And at the time, Postgres kind of came across more like a science project. Like the folks who were using Postgres were kind of the outliers, right, you know, the less pragmatic folks.I think, what's changed over the past, how many years has it been now, 25 years—I'm definitely dating myself—is a few things: one, MySQL is still awesome, but it didn't kind of go in the direction of really, kind of, trying to catch up with the legacy proprietary databases on features and functions. Part of that may just be that from a roadmap perspective, that's not where the owner wanted it to go. So, MySQL today is still great, but it didn't go into that direction. In parallel, right, customers wanting to move more to open-source. And so, what they found this, the thing that actually looks and smells more like legacy proprietary databases is actually Postgres, plus you saw an increase of investment in the Postgres ecosystem, also very liberal license.So, you have lots of other databases including commercial ones that have been built off the Postgres core. And so, I think you are today in a place where, for mainstream enterprise, Postgres is it because that is the thing that has all the features that the enterprise customer is used to. MySQL is still very popular, especially in, like, content and web, and mobile applications, but I would say that Postgres has really become kind of that de facto standard API that's replacing the legacy proprietary databases.Corey: I've been on the record way too much as saying, with some justification, that the best database in the world that should be used for everything is Route 53, specifically, TXT records. It's a key-value store and then anyone who's deep enough into DNS or databases generally gets a slightly greenish tinge and feels ill. That is my simultaneous best and worst database. I'm curious as to what your most controversial opinion is about the worst database in the world that you've ever seen.Andi: This is the worst database? Or—Corey: Yeah. What is the worst database that you've ever seen? I know, at some level, since you manage all things database, I'm asking you to pick your least favorite child, but here we are.Andi: Oh, that's a really good question. No, I would say probably the, “Worst database,” double-quotes is just the file system, right? When folks are basically using the file system as regular database. And that can work for, you know, really simple apps, but as apps get more complicated, that's not going to work. So, I've definitely seen some of that.I would say the most awesome database that is also file system-based kind of embedded, I think was actually SQLite, you know? And SQLite is actually still very, very popular. I think it sits on every mobile device pretty much on the planet. So, I actually think it's awesome, but it's, you know, it's on a database server. It's kind of an embedded database, but it's something that I, you know, I've always been pretty excited about. And, you know, their stuff [unintelligible 00:27:43] kind of new, interesting databases emerging that are also embedded, like DuckDB is quite interesting. You know, it's kind of the SQLite for analytics.Corey: We've been using it for a few things around a bill analysis ourselves. It's impressive. I've also got to say, people think that we had something to do with it because we're The Duckbill Group, and it's DuckDB. “Have you done anything with this?” And the answer is always, “Would you trust me with a database? I didn't think so.” So no, it's just a weird coincidence. But I liked that a lot.It's also counterintuitive from where I sit because I'm old enough to remember when Microsoft was teasing the idea of WinFS where they teased a future file system that fundamentally was a database—I believe it's an index or journal for all of that—and I don't believe anything ever came of it. But ugh, that felt like a really weird alternate world we could have lived in.Andi: Yeah. Well, that's a good point. And by the way, you know, if I actually take a step back, right, and I kind of half-jokingly said, you know, file system and obviously, you know, all the popular databases persist on the file system. But if you look at what's different in cloud-first databases, right, like, if you look at legacy proprietary databases, the typical setup is wright to the local disk and then do asynchronous replication with some kind of bounded replication lag to somewhere else, to a different region, or so on. If you actually start to look at what the cloud-first databases look like, they actually write the data in multiple data centers at the same time.And so, kind of joke aside, as you start to think about, “Hey, how do I build the next generation of applications and how do I really make sure I get the resiliency and the durability that the cloud can offer,” it really does take a new architecture. And so, that's where things like, you know, Spanner and Big Table, and kind of, AlloyDB databases are truly architected for the cloud. That's where they actually think very differently about durability and replication, and what it really takes to provide the highest level of availability and durability.Corey: On some level, I think one of the key things for me to realize was that in my own experiments, whenever I wind up doing something that is either for fun or I just want see how it works in what's possible, the scale of what I'm building is always inherently a toy problem. It's like the old line that if it fits in RAM, you don't have a big data problem. And then I'm looking at things these days that are having most of a petabyte's worth of RAM sometimes it's okay, that definition continues to extend and get ridiculous. But I still find that most of what I do in a database context can be done with almost any database. There's no reason for me not to, for example, uses a SQLite file or to use an object store—just there's a little latency, but whatever—or even a text file on disk.The challenge I find is that as you start scaling and growing these things, you start to run into limitations left and right, and only then it's one of those, oh, I should have made different choices or I should have built-in abstractions. But so many of these things comes to nothing; it just feels like extra work. What guidance do you have for people who are trying to figure out how much effort to put in upfront when they're just more or less puttering around to see what comes out of it?Andi: You know, we like to think about ourselves at Google Cloud as really having a unique value proposition that really helps you future-proof your development. You know, if I look at both Spanner and I look at BigQuery, you can actually start with a very, very low cost. And frankly, not every application has to scale. So, you can start at low cost, you can have a small application, but everyone wants two things: one is availability because you don't want your application to be down, and number two is if you have to scale you want to be able to without having to rewrite your application. And so, I think this is where we have a very unique value proposition, both in how we built Spanner and then also how we build BigQuery is that you can actually start small, and for example, on Spanner, you can go from one-tenth of what we call an instance, like, a small instance, that is, you know, under $65 a month, you can go to a petabyte scale OLTP environment with thousands of instances in Spanner, with zero downtime.And so, I think that is really the unique value proposition. We're basically saying you can hold the stick at both ends: you can basically start small and then if that application doesn't need to scale, does need to grow, you're not reengineering your application and you're not taking any downtime for reprovisioning. So, I think that's—if I had to give folks, kind of, advice, I say, “Look, what's done is done. You have workloads on MySQL, Postgres, and so on. That's great.”Like, they're awesome databases, keep on using them. But if you're truly building a new app, and you're hoping that app is going to be successful at some point, whether it's, like you said, all overnight successes take at least ten years, at least you built in on something like Spanner, you don't actually have to think about that anymore or worry about it, right? It will scale when you need it to scale and you're not going to have to take any downtime for it to scale. So, that's how we see a lot of these industries that have these potential spikes, like gaming, retail, also some use cases in financial services, they basically gravitate towards these databases.Corey: I really want to thank you for taking so much time out of your day to talk with me about databases and your perspective on them, especially given my profound level of ignorance around so many of them. If people want to learn more about how you view these things, where's the best place to find you?Andi: Follow me on LinkedIn. I tend to post quite a bit on LinkedIn, I still post a bit on Twitter, but frankly, I've moved more of my activity to LinkedIn now. I find it's—Corey: That is such a good decision. I envy you.Andi: It's a more curated [laugh], you know, audience and so on. And then also, you know, we just had Google Cloud Next. I recorded a session there that kind of talks about database and just some of the things that are new in database-land at Google Cloud. So, that's another thing that if folks more interested to get more information, that may be something that could be appealing to you.Corey: We will, of course, put links to all of this in the [show notes 00:34:03]. Thank you so much for your time. I really appreciate it.Andi: Great. Corey, thanks so much for having me.Corey: Andi Gutmans, VP and GM of Databases at Google Cloud. I'm Cloud Economist Corey Quinn and this is Screaming in the Cloud. If you've enjoyed this podcast, please leave a five-star review on your podcast platform of choice, whereas if you've hated this podcast, please leave a five-star review on your podcast platform of choice along with an angry, insulting comment, then I'm going to collect all of those angry, insulting comments and use them as a database.Corey: If your AWS bill keeps rising and your blood pressure is doing the same, then you need The Duckbill Group. We help companies fix their AWS bill by making it smaller and less horrifying. The Duckbill Group works for you, not AWS. We tailor recommendations to your business and we get to the point. Visit duckbillgroup.com to get started.Announcer: This has been a HumblePod production. Stay humble.

The Laravel Podcast
Spatie's Laravel-Backup, with Freek Van der Herten

The Laravel Podcast

Play Episode Listen Later Jun 10, 2022 27:31


Freek Van der Herten's Twitter - https://twitter.com/freekmurzeFreek Van der Herten's Blog - https://freek.devSpatie - https://spatie.beSpatie Twitter - https://twitter.com/spatie_be?lang=enOh Dear -  https://ohdear.appLaravel-Backup GitHub - https://github.com/spatie/laravel-backupLaravel-Backup Introduction - https://spatie.be/docs/laravel-backup/v8/introductionVapor - https://vapor.laravel.com/AWS S3 - https://aws.amazon.com/s3/Forge - https://forge.laravel.com/Zend Framework - https://framework.zend.com/DigitalOcean - https://www.digitalocean.com/Composer- https://getcomposer.org/Grandfather-father-son scheme - https://en.wikipedia.org/wiki/Backup_rotation_scheme#:~:text=Grandfather%2Dfather%2Dson%20backup%20is,a%20FIFO%20system%20as%20above.DB-Dumper GitHub - https://github.com/spatie/db-dumperDB-Snapshots GitHub - https://github.com/spatie/laravel-db-snapshotsLaravel Backup Server - https://spatie.be/products/laravel-backup-server

Engineering Kiosk
#02 Technologienzoo Side Projects

Engineering Kiosk

Play Episode Listen Later Jan 10, 2022 44:50


Wolfgang und Andy erzählen ein wenig was über ihre eigenen Side Projects sourcectl (https://gettoknow.sourcectl.dev/), F-Online (https://www.f-online.at/) und the athlete (https://theathlete.app/).Wir machen eine Rundfahrt durch den verwendeten Technologienzoo, diskutieren ob man Monitoring in Side Projects benötigt, wann es Over-Engineering und wann gerechtfertigt ist, ob der heutige Einsatz von Zend Framework 1 schon als kriminell gewertet werden kann und hören Wolfgang zu, wie er DevOps Anfängerfehler begeht indem ihm die Festplatte voll logs läuft.Bonus: Wie Wolfgang den ultimativen Reichtum mit seinem eigenen CMS zur dotcom Blase verpasst hatFeedback an stehtisch@engineeringkiosk.dev oder via Twitter an https://twitter.com/EngKioskAndy (https://twitter.com/andygrunwald) und Wolfgang (https://twitter.com/schafele) sprechen im Detail über:Kapitelmarken zum Navigieren(00:00) Intro(02:03) Vorstellung von Andy und Wolfgang(02:18) Vorstellung Andy Grunwald(02:36) Vorstellung Wolfgang Gassler(03:11) Side Project "inspect": Automatische Generierung einer RabbitMQ Architektur(04:23) Was ist RabbitMQ?(05:33) Side Project "sourcectl": Metrik Platform für Inner Source und Open Sorurce Projekte(06:32) sourcectl: Warum nutzt du RabbitMQ und keine Datenbank für das Message Queuing?(07:48) sourcectl: Monitoring(08:55) sourcectl: Verarbeitung von Messages(09:50) sourcectl: Infrastruktur- und Application-Setup(12:01) Was zur Hölle ist ein OMR (vs. ein ORM)?(12:53) Was ist Traefik: The Cloud Native Application Proxy? (17:45) Traefik Pro und Overengineering: Loadbalancing über mehrere Server und verteilte SSL Zertifikate(20:00) Side Project "F-Online": Für den Führerschein in Österreich lernen(21:34) F-Online: Hosting und Monitoring(25:27) Tipps um Kosten bei Google Cloud unter Kontrolle zu halten(26:01) F-Online: Infrastruktur- und Application-Setup(26:42) Wolfgangs Leiche im Keller: Zend Framework 1 auf (teils) aktueller PHP Version(29:00) F-Online: JavaScript Architektur(31:29) F-Online: APIs(32:40) F-Online: Datenbank(34:39) F-Online: Wie es aussehen würde, wenn es nochmal neu gebaut werden würde(37:22) Engineers over-engineeren von Haus aus(37:40) Side Project "the athlete"(39:02) Ziele, Motivation und die (eigenen) Erwartungen an Side Projects(40:28) Wolfgang erzählt vom Krieg: Sein eigenes Content Management System(42:37) OutroErwähnte Side Projectssourcectl (https://gettoknow.sourcectl.dev/)F-Online (https://www.f-online.at/)the athlete (https://theathlete.app/)Erwähnte TechnologienAMQP (https://www.amqp.org/)Babel (https://babeljs.io/)Backbone (https://backbonejs.org/)DigitalOcean (https://www.digitalocean.com/)Docker (https://www.docker.com/)Flutter (https://flutter.dev/)GitHub (https://github.com/)Go (https://go.dev/)Google Cloud Free-Tier (https://cloud.google.com/free)Grafana (https://grafana.com/)GraphQL API (https://graphql.org/)Grunt (https://gruntjs.com/)Hetzner Cloud (https://www.hetzner.com/de/cloud)JQuery (https://jquery.com/)Kubernetes (https://kubernetes.io/)Lets Encrypt (https://letsencrypt.org/)Marionette (https://marionettejs.com/)MooTools (https://mootools.net/)MySQL (https://www.mysql.com/)Nginx (https://www.nginx.com/)PHP (https://www.php.net/)Prometheus (https://prometheus.io/)RabbitMQ (https://www.rabbitmq.com/)React (https://reactjs.org/)React Native (https://reactnative.dev/)Script.aculo.us (https://script.aculo.us/)Terraform (https://www.terraform.io/)Traefik (https://traefik.io/)VueJS (https://vuejs.org/)Webpack (https://webpack.js.org/)Zend Framework 1 (https://github.com/zendframework/zf1)AnderesOMR - Online Marketing Rockstars (https://omr.com/de/)No Code (https://www.nocode.tech/)Erwähnte PersonenMatthias Endler (https://twitter.com/matthiasendler / https://endler.dev/)HostsWolfgang Gassler (https://twitter.com/schafele)Andy Grunwald (https://twitter.com/andygrunwald)Engineering Kiosk PodcastAnfragen an stehtisch@engineeringkiosk.dev

Security Now (MP3)
SN 800: SolarBlizzard - SolarWinds' Orion Software, Swatting Goes IoT, PHP Zend Framework Vulnerability

Security Now (MP3)

Play Episode Listen Later Jan 6, 2021 110:21


SolarWinds' Orion software, swatting goes IoT, PHP Zend Framework vulnerability. Chrome struggles with A/V pre-scan file locking. Zyxel security products protected by a single redundant password. How Swatters are using IoT devices to increase the terror. A new serious problem in the PHP Zend Framework on WordPress. Bitcoin woes as value reaches new peaks. ReadSpeed, SSD's, and SpinRite. A new flaw discovered in SolarWinds' Orion software. We invite you to read our show notes at https://www.grc.com/sn/SN-800-Notes.pdf Hosts: Steve Gibson and Leo Laporte Download or subscribe to this show at https://twit.tv/shows/security-now. You can submit a question to Security Now! at the GRC Feedback Page. For 16kbps versions, transcripts, and notes (including fixes), visit Steve's site: grc.com, also the home of the best disk maintenance and recovery utility ever written Spinrite 6. Sponsor: itpro.tv/securitynow promo code SN30

Security Now (Video HI)
SN 800: SolarBlizzard - SolarWinds' Orion Software, Swatting Goes IoT, PHP Zend Framework Vulnerability

Security Now (Video HI)

Play Episode Listen Later Jan 6, 2021 110:21


SolarWinds' Orion software, swatting goes IoT, PHP Zend Framework vulnerability. Chrome struggles with A/V pre-scan file locking. Zyxel security products protected by a single redundant password. How Swatters are using IoT devices to increase the terror. A new serious problem in the PHP Zend Framework on WordPress. Bitcoin woes as value reaches new peaks. ReadSpeed, SSD's, and SpinRite. A new flaw discovered in SolarWinds' Orion software. We invite you to read our show notes at https://www.grc.com/sn/SN-800-Notes.pdf Hosts: Steve Gibson and Leo Laporte Download or subscribe to this show at https://twit.tv/shows/security-now. You can submit a question to Security Now! at the GRC Feedback Page. For 16kbps versions, transcripts, and notes (including fixes), visit Steve's site: grc.com, also the home of the best disk maintenance and recovery utility ever written Spinrite 6. Sponsor: itpro.tv/securitynow promo code SN30

Security Now (Video LO)
SN 800: SolarBlizzard - SolarWinds' Orion Software, Swatting Goes IoT, PHP Zend Framework Vulnerability

Security Now (Video LO)

Play Episode Listen Later Jan 6, 2021 110:21


SolarWinds' Orion software, swatting goes IoT, PHP Zend Framework vulnerability. Chrome struggles with A/V pre-scan file locking. Zyxel security products protected by a single redundant password. How Swatters are using IoT devices to increase the terror. A new serious problem in the PHP Zend Framework on WordPress. Bitcoin woes as value reaches new peaks. ReadSpeed, SSD's, and SpinRite. A new flaw discovered in SolarWinds' Orion software. We invite you to read our show notes at https://www.grc.com/sn/SN-800-Notes.pdf Hosts: Steve Gibson and Leo Laporte Download or subscribe to this show at https://twit.tv/shows/security-now. You can submit a question to Security Now! at the GRC Feedback Page. For 16kbps versions, transcripts, and notes (including fixes), visit Steve's site: grc.com, also the home of the best disk maintenance and recovery utility ever written Spinrite 6. Sponsor: itpro.tv/securitynow promo code SN30

Security Now (Video HD)
SN 800: SolarBlizzard - SolarWinds' Orion Software, Swatting Goes IoT, PHP Zend Framework Vulnerability

Security Now (Video HD)

Play Episode Listen Later Jan 6, 2021 110:21


SolarWinds' Orion software, swatting goes IoT, PHP Zend Framework vulnerability. Chrome struggles with A/V pre-scan file locking. Zyxel security products protected by a single redundant password. How Swatters are using IoT devices to increase the terror. A new serious problem in the PHP Zend Framework on WordPress. Bitcoin woes as value reaches new peaks. ReadSpeed, SSD's, and SpinRite. A new flaw discovered in SolarWinds' Orion software. We invite you to read our show notes at https://www.grc.com/sn/SN-800-Notes.pdf Hosts: Steve Gibson and Leo Laporte Download or subscribe to this show at https://twit.tv/shows/security-now. You can submit a question to Security Now! at the GRC Feedback Page. For 16kbps versions, transcripts, and notes (including fixes), visit Steve's site: grc.com, also the home of the best disk maintenance and recovery utility ever written Spinrite 6. Sponsor: itpro.tv/securitynow promo code SN30

Tempo Real Entrevistas Podcast
Histórias em Quadrinhos e Software Livre (ascensão e queda no governo federal)

Tempo Real Entrevistas Podcast

Play Episode Listen Later Nov 7, 2020 82:02


ConFLOSS na VEIA: A entrevista tratou de Histórias em Quadrinhos e Software Livre (ascensão e queda no governo federal)Cultura, Comunidades. Flávio Lisboa: É mestre em Tecnologia e Sociedade pela Universidade Tecnológica Federal do Paraná. É bacharel em Ciência da Computação com especialização em Programação Orientada a Objetos e Tecnologia Java. Possui as certificações Zend PHP Certified Engineer, Zend Framework Certified Engineer e Zend Framework 2 Certified Architect. É autor de 9 livros sobre programação PHP com uso de frameworks. Trabalha como analista no Serviço Federal de Processamento de Dados e é professor de pós-graduação na Unicesumar, Faculdades Alfa e Professor de graduação no Isulpar, em Paranaguá.

PHP Web Development Podcast with Mathew Kimani.
PHP Developer Glassgow - Advert

PHP Web Development Podcast with Mathew Kimani.

Play Episode Listen Later Sep 23, 2019 2:04


PHP Back-end Developer Salary: £35,000 - £60,000 Based in Glasgow We are currently recruiting for a Back-End PHP Developer to join a unique and growing FinTech company in Glasgow. Our client is looking for an ambitious PHP Developer to join their development team and assist with a very big project coming up. This is an excellent opportunity for an experienced PHP Developer to utilise their skills within a fast-paced and challenging environment, handling projects in the UK and across the USA. The ideal candidate will be extremely self-motivated and have the ability to produce and maintain high quality work whilst also complying with strict deadlines. The candidate should also have an eagerness to learn and grow on their skills & technologies. You must have: Strong knowledge and skills using PHP Extensive experience of working with Laravel, Symfony, Zend Framework and/or any other PHP framework Good understanding of HTML5, JavaScript and CSS3 Experience with SQL and database design skills Linux system administration and DevOps experience, including creating and managing clusters of servers and databases Experience with version control systems i.e. Git and Subversion Good experience of object oriented and/or procedural PHP programming Strong knowledge of data structures, algorithms, analysis and designing for performance, scalability and availability Excellent communication skills, both written and verbal Have the ability to deal with issues ranging from front-end to back- end Benefits: £35,000 - £60,000  Holiday package Pension Scheme  Training  Progression  Great culture  Flexibility  Location: Glasgow Keywords: PHP – MySQL – JavaScript – jQuery – HTML- HTML5 – CSS – CSS3– API – WordPress – Angular – Laravel – Symfony – Zend - Node – GIT– Development – Developer  -PHP developer – Development – Software – Web applications – Web development – FinTech – Glasgow – Scotland – Web Developer LinkedIn: C2B Solutions UK Twitter: C2BSolutionsUK Please apply now as we are actively reviewing applications. C2B Solutions UK Ltd is acting as an Employment Agency in relation to this vacancy.

PHP Town Hall
Episode 67: Zend Framework 3.Laminas

PHP Town Hall

Play Episode Listen Later Jul 8, 2019 55:49


Matt Trask and Ben Edmunds are joined by Adam Culp to discuss the recent changes with Zend (the company), Zend (the framework), and the transition from Zend Framework to Laminas Framework. Links Laminas Nexmo Releated Stuff Beachcasts Video on Hypermedia Video on automating Hypermedia

video tech development software app programming dev javascript frameworks php fig laravel joomla zend hypermedia zend framework ben edmunds codeigniter yii adam culp matt trask
Voices of the ElePHPant
Interview with Matthew Weier O’Phinney

Voices of the ElePHPant

Play Episode Listen Later May 2, 2019 22:18


@mwop Show Notes The Linux Foundation forms new Laminas project to support continued growth of Zend Framework and PHP tooling From Zend to Laminas Laminas Swoole – Production-Grade Async programming Framework for PHP Audio This episode is sponsored by Using the WordPress REST API The post Interview with Matthew Weier O’Phinney appeared first on Voices of the ElePHPant.

Run Geek Radio with Adam Culp
Episode 017 – Zend Framework becomes Laminas Project

Run Geek Radio with Adam Culp

Play Episode Listen Later Apr 18, 2019 8:35


Adam Culp (RunGeekRadio) shares exciting news about Zend Framework becoming part of the Linux Foundation, and rebranding as the Laminas Project. Related Links: Laminas Project – https://getlaminas.org Expressive site – https://getexpressive.org Beachcasts video announcement – https://youtu.be/CEIO90ocEDI Linux Foundation post – https://www.linuxfoundation.org/blog/2019/04/lf-forms-laminas-project/ GeekyBoy.com post – https://www.geekyboy.com/archives/1440 Zend Framework post – https://framework.zend.com/blog/2019-04-17-announcing-laminas.html Matthew Weier O’Phinney post – … Continue reading Episode 017 – Zend Framework becomes Laminas Project → The post Episode 017 – Zend Framework becomes Laminas Project appeared first on Run Geek Radio with Adam Culp.

project expressive linux foundation zend framework adam culp
Cliff Notes Podcast: Lead manufacturing
18: Talking APIs evolving serverless with Rob Allen

Cliff Notes Podcast: Lead manufacturing

Play Episode Listen Later Nov 23, 2018 27:51


Rob specialises in web APIs and working with modernising legacy software for companies. The development agency Nineteen Feet was formed in 2013 by Rob Allen. A published author and long term public speaker who also contributes to Open Source projects including leadership roles in Slim Framework and Zend Framework. Rob has also has an interest in Serverless solutions, in particular the Apache OpenWhisk project and its commercial implementation on IBM Cloud Functions. Rob contact: https://twitter.com/akrabat Rob's company: https://19ft.com/ Tweet at @cliffnotespod This episode of Cliff Notes Podcast: Ask a leader, host and founder of Holdingbay Tristan Bailey talks to Rob Allen for the Cliff Notes podcast. Rob has been programming and advising companies on long term strategy for many years. We get into talking about APIs and how they can adapt and grow your systems while offering a cost reduction to future work and collaboration with other business systems. Show Notes: https://cliffnotespodcast.com/podcasts/18/  

The Laravel Podcast
Interview: Freek Van der Herten, Lead Developer at Spatie

The Laravel Podcast

Play Episode Listen Later Jul 23, 2018 56:49


An interview with Freek Van der Herten, lead developer at Spatie. @freekmurze Spatie ColecoVision HyperCard BASIC Krautrock Antwerp Browsershot package Spatie Postcard Page Oh Dear! Transcription sponsored by Larajobs Editing sponsored by Tighten Matt Stauffer: Welcome back to the Laravel podcast, season three. Today we're going to be talking with Freek Van der Herten, (pronounced) something like that. He works with Spatie, and they make packages and do all sorts of great things. Stay tuned, you'll learn more. Matt Stauffer: All right, real quick note going into this episode. I just moved offices, and I only noticed after moving that the movers bumped the gain knob on my audio. So it's not going to sound great. I apologize ahead of time. But don't blame Michael, it's not his fault. It's my fault. Sort of the movers, but mainly just me. All right, let's get on with the episode. Matt Stauffer: All right, welcome back to the Laravel podcast, season three. This is a season where we learn about all sorts of amazing people. You may have heard of them before, you may not have heard of them before, but they're all absolutely incredible, and if their name is not English, then I also mangle it terribly and they fix it up for me. Matt Stauffer: Today we're talking to ... okay, Freek Van der Herten, (pronounced) something like that, who is one of the leads ... [crosstalk] Oh, no, you're going to do it for me in a second, and then you can grade me on how well I did. And you're also going to have to grade me on how well I do the name of your company, because I have been told that I say it wrong. So, Spatie, which apparently is close but not quite right. So that's a company. They make packages, they do open source Laravel stuff, all this kind of stuff. You've seen their open source packages, used those packages, you've seen his blog, you've seen him on Twitter, all that kind of stuff. Matt Stauffer: So the first thing that I'm going to ask him to do is first say his name and his company's name right. Second, grade my pronunciation and see if he can make me do it any better. And third, ask the first question we always ask, which is, when you meet people in the grocery store, how do you tell people what it is that you do? Freek Van der Herten: Okay. Let me pronounce it just right. My name is Freek Van der Herten. I work for a company called Spatie. And I would rate your pronunciation an 8 out of 10 or a 9 out of 10, so it's pretty good. You did it pretty well. Matt Stauffer: All right, for an American, that's a pretty good number, so I'll take it. Freek Van der Herten: So at the grocery store, if somebody asks what I do, I simply say that I make websites, I'm a programmer. So I try to make it really easy, because I am mostly on the back end stuff, and for people that are not into back end, that's all a little bit fuzzy. And with websites, they immediately know, oh yeah, he creates those. Yeah. Freek Van der Herten: And I always say, I'm not going to install printers. That's not my job. I program stuff. Matt Stauffer: That's perfect, because if you say I work with computers, that leaves that open. You might be a networking person or something like that. So I can hear in your pronunciation a little bit of the ways that I'm off. So I'll go back, listen to this 10,000 times, and see if I can get it right. But an 8 out of 10 or a 9 out of 10 for a Southern American, I'm going to take that as a win. Freek Van der Herten: It's pretty good, man. Matt Stauffer: Right. So I mentioned this real quick, but Spatie, Spatie, whatever it is, they have 10,000 packages. Some of our questions are going to be about all of the Laravel packages you have, a little bit about your tweeting and your sharing of content. But of course, if anybody doesn't know who he is, just check him out. So I also don't know ... I know that I asked you personally, and I know where your Twitter handle comes from, but not everybody else does, and I don't actually know how you pronounce it. So tell us your Twitter handle, where it comes from, and how you actually say it in your mind. Freek Van der Herten: Well, my Twitter handle is @freekmurze, and it's actually a very good question, where it comes from. Freek is just my first name, but I have actually three names, and that's not that uncommon in Belgium. Most people have multiple first names, and mine are Frederick, because Freek is just a nickname, actually. My second name is [inaudible 00:03:59]. And the third name, which is a very special name, I don't think anybody has it now, it's Murzephelus. And Murzephelus is a name given by my parents, and it's an emperor, it's a Byzantium emperor, because both my parents are lawyers, and when they had me, there was this law in Belgium that you had to pick the name of your child from this big list of names that were approved, and they wanted to see what the city clerk would do if they just picked a name out of history that is not on that list. So they picked Murzephelus- Matt Stauffer: Rebels. I love it. Freek Van der Herten: And the clerk didn't say anything, they just wrote it down. Matt Stauffer: Nice. Very cool. It's funny, because- Freek Van der Herten: And I've also passed it down to my kids. So they also have Byzantium emperor names. Matt Stauffer: I love it, that's awesome. It's funny, 'cause when I first looked it up, I was like, oh, Mur-zeph-el-us. But it sounds a lot more regal when you say Murz-e-phlus. Matt Stauffer: All right, so that's your Twitter handle. So go follow him on Twitter if you don't know, he's got a newsletter and a blog. And one of the things that Freek does a lot is collect together the best stuff from other people, and so Spatie creates an incredible number of packages. Quite a few of them are original content, but one of the things they also do is they take stuff that other people are doing and they package it up together in a normalized way. So if somebody says, here's a thing on Laracasts or here's an idea or something like that, they will often make a package around it. And Freek both writes his own articles, and the people at Spatie write their own articles, and then they also collect together links to articles from other people around the community. So they're both creators and curators, and that's something kind of they're known for. So if you haven't seen them, go check out that stuff that they're doing. Matt Stauffer: Okay, that's fun. Moving on, when did you first get access to a computer? In what context, and what was your interaction with that computer like? Freek Van der Herten: I started using computers at a very early age. It was actually, also, my dad had bought a ColecoVision. I don't know if you know that console. Matt Stauffer: I've never heard of it. Freek Van der Herten: It was very big in the '80s, I think around '82 or '83. So I must have been three or four when my dad had a console and he let me play on it, and that was the first time I interacted with this on a screen. Matt Stauffer: What kind of operating system was it on? Freek Van der Herten: I don't know, it's a game console, so it's only- Matt Stauffer: Oh, a gaming console. Freek Van der Herten: Yeah, yeah, it only had games on it, and that was the first time I interacted with something and saw something moving on a screen. Matt Stauffer: Got it. Freek Van der Herten: Now shortly after that, I think two years after, we got our first computer in the house, which was, I think ... It was definitely a Macintosh, and I think it was an SE model. It's one of the first models. So my dad was a little bit of a computer freak, and he wanted, he had to buy this new stuff. So I started out with a System 6, I think it was, on Mac OS. And, yeah, I started ... yeah, there was a program on there called, maybe some people know it, called HyperCard, which was- Matt Stauffer: I've heard of it. Freek Van der Herten: It's a very simple application, which makes it very great. It's just a stack of cards which you can programmatically do stuff with. You can say, if somebody clicks here, go to card number three. If somebody clicks here, go to card number five. So I started to ... And if you click here, play a sound or display this image. So I made my first ... I don't know if I can call it computer programs, but I made my first projects with that little ... little games like that. So that was- Matt Stauffer: That's funny how different Mac and PC are, because I know about HyperCard, I saw it in school, but I never worked with it. But my first one was BASIC, and it's probably around the same time period. I was six or something, so it was around late '80s, early '90s. Freek Van der Herten: Yeah. Matt Stauffer: And it was such a different experience. I was learning syntax and code and able to do almost nothing, whereas with the Mac, it's giving you this visual, interactive system, and it's such a difference even back then of what you're getting from each of them. Freek Van der Herten: Yeah, 'cause at the school, we had a Windows computer. Yeah, a Windows 3.1 computer. But the Windows subsystem, that was just a shell. You had also MS-DOS behind it, and when I saw that, I thought, what is this? I'm going back in time, we have something way better at home. We have this thing like a mouse on there. Matt Stauffer: Yeah. Yeah, that's interesting. Freek Van der Herten: So that was fun. So I've always been busy with computers and creating my own little things on it. Matt Stauffer: Did your interests keep up through school? Did you always think of yourself as a computer person? Freek Van der Herten: Yeah, I always knew I wanted to do something with computers. I studied IT as well, so I'm one of the lucky ones. At a very age, I knew I wanted to do this. But IT is very big, so I did a lot of things on my computer as well. At one point, I also did some sound technology, some songs, because that's another passion of mine. I'm also busy with music, I have my own band, and- Matt Stauffer: Okay, you're going to tell us more about that in a second. Freek Van der Herten: Yeah. So way before Laravel was there, when I still had time to do other stuff, I created music as well. But that helps a little bit with all the background, right, the background right now. Matt Stauffer: Okay. You know what, I actually am going to pause there. What musical instruments do you play, and it sounds like you were also recording. Were you doing mixing and mastering and production and everything? Freek Van der Herten: Just recording stuff, and a little bit of mastering, but then I'm not really good at it. Matt Stauffer: Yeah, yeah. Freek Van der Herten: My musical taste is a little bit lo-fi, so what I recorded was lo-fi as well. Matt Stauffer: Yeah, yeah. Freek Van der Herten: So I started ... My first instrument was, I think, the saxophone, when I was 10 years old. I had to do that for my parents. Yeah, you have to do musical school. Matt Stauffer: Yeah, yeah. Freek Van der Herten: But I didn't like it that much. I think the first two years were great but then I wasn't interested in the saxophone anymore. I tried to pick up the piano, and did a year of piano. And then I learned guitar myself, and that's an instrument where ... I stick a little bit by. So in all the bands that I- Matt Stauffer: Do you play acoustic or electric more? Sorry. Freek Van der Herten: It's more electric these days, 'cause, yeah, I play in a band and I have my electric guitar installed there. So I do that more. I do a little finger picking at home. I have the acoustic guitar here. But it's not as much as I used to. Matt Stauffer: What style of music do you play? Freek Van der Herten: It's a style called krautrock. I don't know if you know that. Matt Stauffer: I don't. You're going to have to send me the link later so I can put it in the show notes. Freek Van der Herten: Well, it's like this ... It's my favorite kind of music. It's like ... house music, like dance music. Very repetitive. But with guitars instead of electronic instruments. Matt Stauffer: Okay, all right. Freek Van der Herten: So there's some good bands that you should check out from the territory. It's very big in the '90s, there are bands like Can and Neu! And the ideas behind those bands revolve around ... with how, how do you say it in English, how can we keep things interesting with the least amount of notes? With three notes, what can we do. Just by repeating them, we'll make it interesting again. Matt Stauffer: Very interesting, yeah. Freek Van der Herten: And that's an aesthetic that I really like, just the simple things. The fertile things. Not too many whistles and bells with it, but just fertile, pure, straight to the point. Matt Stauffer: It's funny, 'cause when you said repetitive, the first thing I thought of was jam bands. And a lot of jam bands are a lot of noise. You've got 20 people on stage, but they're very repetitive and they're not interesting to me, because everybody's playing the same noisy notes over and over and over again, so it seems almost the opposite, at least in my very judgmental perspective, where you're trying to have very little noise, but actually keep it interesting. Freek Van der Herten: Yeah. I'll send you some interesting pieces to you. I have- Matt Stauffer: Yeah, I'll put it on the show notes, everybody. Freek Van der Herten: I've recently listened again to a few versions of a piece called In C. I don't know if you know it. It's a musical piece, I can't remember the author right now. It's probably going to go in my mind in a few seconds. And it's like 18 melodies of music, and it's 20 people playing them, and there are a few rules around it. When somebody plays the fourth tune, everybody still on the first tune should skip to the second. There can only be a gap of two. And then you go slowly to the end, and it lasts about an hour. And it's very simple melodies, but they interlock very, very well together. And it's not written on paper, how much times you have to repeat each melodic phrase. So every version is a little bit different. Matt Stauffer: Interesting, yeah. Freek Van der Herten: And that's interesting music to me. Matt Stauffer: So you could theoretically have one musician who's just really antsy to move on, and the whole thing would be done in 20 minutes? Freek Van der Herten: Yeah, yeah. Matt Stauffer: Oh, very interesting. Freek Van der Herten: That could be the case, yeah. Matt Stauffer: Everyone's glaring at that one guy. Freek Van der Herten: There are hundreds of versions of that, but they're all amazing. Matt Stauffer: Very interesting, okay. Like I said, I'm going to get him to write all this down for us. Links in the show notes later. Freek Van der Herten: Yeah, sure. Matt Stauffer: I'm super interested to learn about that. So you said you don't do as much music now, is that true? Freek Van der Herten: Yeah, that's true. Matt Stauffer: I hear you right? Freek Van der Herten: Yeah. So when I was a little bit younger, I think when I was around 20s, then I had a little studio in my own apartment, and I recorded lots of songs. That was my main hobby then. Nowadays, it's programming, but then it was every moment of free time that I had, I have to record stuff, I have to experiment with stuff, which is ... Yeah, sometimes I listen back to those recordings, like every five years or something, and I am still a little bit proud that there's something that I accomplished. Matt Stauffer: Yeah, yeah, definitely. Yeah, I spent that much time, I got that good, even if I couldn't do that right now, that's still something I did. Freek Van der Herten: Yeah, yeah. Absolutely. Matt Stauffer: All right, well, I want to ask you more questions about that, but I also want to get to the end as well. All right, so when you first got into that, you said you had access to those Windows computers in school. So what did your school education look like? At what point did you start getting more than just typing lessons? Freek Van der Herten: I think when I was 14 or 15, we had lessons in a thing called Isolab. I don't know if that is a well-known program or not, but it's something we teach at school, and it's basically this grid, and there's a car in it and there are certain obstacles, and you have to write an algorithm to let the car reach a special end spot. Matt Stauffer: I want to do that now. Freek Van der Herten: And it's something to exercise things like loops, like memory, like and or not kind of stuff. And that are the first things that I learned to do. We also had a little bit of Visual Basic if you were ... I went into higher education, so we programmed things in Access. Access is this Microsoft database, where we had to program the streams and special reports and stuff like that, and I only got into programming, into real programming with computer languages, in higher education, where I got to learn C++ and COBOL. Things like that. Yeah, I learned COBOL. Matt Stauffer: Now, were you doing IT? Was it IT then, or were you specializing more in computer science? Freek Van der Herten: It was ... I don't know how you say it, how you translate that thing that I said it in English, but it's focused on practical IT. But it was in 1989 that I studied higher education, and yeah, internet wasn't as big like it is now. And we didn't have any lessons on HTML or the web. It was all on this enterprisey kind of stuff that we had to learn, like Java, like C++. Things like that. Matt Stauffer: Yeah. Huh. So when you say secondary education, do you mean when you were 18 years old, or when you were 14 years old? Freek Van der Herten: Secondary education, that's from 12 years old to 18 years old. Matt Stauffer: Oh, got it. Okay. Freek Van der Herten: And when you're 18 years old, you go to higher education. Some people go to ... Most people. Matt Stauffer: So even in 12-18 years old, you were able to specialize, 'cause in the US, in 12-18, you just do whatever they tell you to do. There's no specialization like that. Freek Van der Herten: Yeah, there are. Matt Stauffer: So you were able to focus on a certain track. Freek Van der Herten: Yeah, yeah. From 12 years old, or I think from 13, you can really pick your direction if you want to ... a language kind of education, a mathematical based education, an IT kind of education. So you can make a choice there a little bit. Matt Stauffer: Okay. And also did you ... Oh, go ahead. Freek Van der Herten: And of course, when you're 18, then you have much more choices, so they get you basically anything that you want. Matt Stauffer: Okay. So where did you go after secondary education, then? Freek Van der Herten: So, I did my secondary education in my hometown, which is a small town in the northern part of Belgium. But I always knew that when I'm going to higher education, I don't want to live at home anymore. I want to live by myself. All my friends were in that mindset. We're 18, we're going to move, we're going to get away from our parents, even though we all love our parents, it's not [crosstalk]- Matt Stauffer: Yeah, yeah. Freek Van der Herten: We're now grownups. Matt Stauffer: Yeah, yeah. Exactly. Freek Van der Herten: So I moved to the biggest city in the vicinity of my hometown, which is a city called Antwerp. Matt Stauffer: Okay, yeah. Freek Van der Herten: Where I've lived for a long time, and Spatie is still based here. And I went to school there, and I left home. My student life in the city of Antwerp. Matt Stauffer: Okay. That's actually one of the only cities I know there, so that's a good win for me. I'm nodding, I actually heard of that before, that's good. Go me. Freek Van der Herten: You should come to Antwerp, it's a beautiful city. You would enjoy it. Matt Stauffer: Oh, I would love to. Yeah. Freek Van der Herten: It's not that far from Amsterdam. Matt Stauffer: I said in the last podcast, once you get Americans over to Europe, we don't want to leave, because it's so expensive to get over there, which is why it was so crazy. I was there for Laravel Live UK for five days and then came home. But the next ... I'm trying to get my kids to the age where I can take them over, because once I have the whole family over there, I'll just work from there. It doesn't matter. So I'm hoping someday in the next couple years, we'll get a whole month and just go see everybody in the whole Laravel world, and just stay in everybody's town for a couple days. So Antwerp's on the list. Freek Van der Herten: Well, you're certainly welcome here. So do that. Matt Stauffer: All right. I won't get booted out of town, that's good. Matt Stauffer: Okay, so you went out ... So what did you study? Was it continued practical IT, or was it something different when you went into higher education? Freek Van der Herten: Yeah, that was practical IT that I studied. So that was more enterprise stuff, things that I learned there. Things like C++, like some math was still there. Things like analysis, how do you cope with a big, big project. And looking back at it, I really like what I was taught there, but a lot of the things that I learned there, after the years, I thought, yeah, what they taught me was a little bit wrong. Matt Stauffer: I was going to ask how you reflected on your education. Is there more you can say about that? Is there broad strokes you can make about what was good and what was bad? Freek Van der Herten: Yeah, so something that has really stuck with me is in one of the first lessons, I was taught, and I did it for years ... It's a very practical thing. A function can only have one return statement. And that fucked my career up so bad. Matt Stauffer: Yeah, I believe it. Freek Van der Herten: Enlightenment came only 10 years after. Hey, it's actually better to have early returns. But things like object calisthenics, I don't know when those ideas came, but they certainly weren't taught in school. So I'm skipping ahead 10 years now, but there was a time that I thought, man, I really wish that there were a few teachers back then that knew about the stuff that I'm learning now, because there is much more than the stuff that they taught me. Freek Van der Herten: It's not all bad. It's not all bad. They taught some good stuff as well. With the things I learned there, I landed my first job, which was something I didn't expect. I was a COBOL programmer for seven years or something like that, and I still remember when I was at the job interview, and they asked me, "So, what do you want to do?" And I said, "Anything except COBOL." And they gave me COBOL, and I did it for seven years. Freek Van der Herten: But it was kind of fun to do it. It was ... I worked for a major bank, maybe you know it. It's called ING. I think you have- Matt Stauffer: Yeah, yeah. I have, I used to have, or maybe still do. I don't know. For sure. Freek Van der Herten: I think they're operating in America as well, and yeah, I programmed COBOL there for the mainframe. Matt Stauffer: Okay, wow. Freek Van der Herten: So we did the financial stuff. So it was kind of important, what we did there. And I still look back very fondly to that period, because I had very good colleagues there, and we could do amazing stuff. Even with an old language like COBOL, we could really do some ... We really could program some nice solutions. And sometimes I miss the scale a little bit of programming in that way, because it's like, one-fifth of the country has an account on ING. Matt Stauffer: Yeah. Freek Van der Herten: And that's kind of fun to work on. Matt Stauffer: I know we're getting ahead of ourselves just a bit, but I asked this of J.T. as well. Programming in COBOL, and the programmers who have been in COBOL for years, and the patterns and practices you have are a little different, I imagine, than working with Laravel. Freek Van der Herten: Yeah. Matt Stauffer: Is there something, one or two things, that you experienced or learned during your time there that you think a lot of us that haven't had that sort of experience could benefit from hearing about? Any practices or any maxims or any sayings, or testing patterns or anything that you experienced there that you wish more people knew about? Freek Van der Herten: Let me think. One of the things that I already did at the time is testing a lot, but it was in an old way, so I can't recommend that. I think what sticks with me most from the time is not a technical programming thing that we did, but the team we did it with. The client communication between the team, and we were ... within the firm, we were one of the first groups that wrote standards for ourselves. We were going to name variables like this, we are indenting our code a little bit like that. We're going to use prefixes for that. We're going to use suffixes for that, which was really beneficial. And that's something we do at our company, at Spatie now as well. And that's something I think a lot of people could learn a little bit from, just some guidelines and be very, how do you say that in English, I can't remember, just where everything is always the same- Matt Stauffer: Consistent. Freek Van der Herten: Consistence. Keep consistence. Things like a dash or an underscore or when you case things. They seem like, hey, it's not important, but it's actually very important when you work in a team. Matt Stauffer: Yeah, I totally agree. Freek Van der Herten: Yeah, and that's something I picked up with working in a good team at ING. Matt Stauffer: Very cool. All right, so you got a job at ING right out of higher education, right? Freek Van der Herten: Yeah, yeah. Matt Stauffer: Okay. So what made you move, and where'd you move to? Freek Van der Herten: Well, that's a good question. So when I was working at ING for a couple of years, there were plans to split up the branch I was working in. So I worked in the insurance branch, and ING sold it off to another company. So it became apparent that our team had to split and had to move to different cities, and at the time, I didn't want to move cities. So I went for another job in Antwerp, another company that also does COBOL. But I was a little bit shellshocked there, at ING, because I had worked there for so long. I had this network of people, and I could get things done. I didn't have to follow the rules. I could cut some red tape. But at the new company, I didn't have a network, and it was so, so very frustrating for me that I couldn't get any things done. Freek Van der Herten: Now, at the time, I also had a friend of mine called Willem, and Willem, he just started this little company called Spatie- Matt Stauffer: I was going to say, I've heard that name before. Freek Van der Herten: Yeah, and he was doing everything by himself, and everything by himself. He programmed a little, he designed a little, he did all the client work by himself. And I'm sure it came up at a band rehearsal that we have, I really hate my job now. And then he said, "Yeah, would you want to program for the web?" Because I felt that he couldn't do everything by his own anymore. He was good in design but he didn't like programming as much, so he looked for somebody that wanted to program a little bit. Freek Van der Herten: But I wasn't certain at the time. So I did a couple of stuff for Willem first. But there's no way to sugarcoat this, because I was so bored at my job, I started just creating websites at my job itself, because I had basically ... This is the honest truth. They didn't give me enough work. So they gave me an assignment. Yeah, this is your assignment for a week, and after two hours it was done. So I reported to management, give me more work. And they didn't give me more work. So I started programming for the web and learning stuff for the web. Freek Van der Herten: And after half a year or something, I said, yeah, this is silly. I'm just working for myself at this job, so I just quit. And then I started working for Spatie. Matt Stauffer: What's your official role there right now? Freek Van der Herten: I'm, I guess, the lead developer there, although I don't like the term a little bit. That's what we tell people that we meet. Freek is our lead developer. So I still do a lot of programming day to day myself, but I also help my colleagues getting things done. I don't like thinking about the lead, with the term lead programmer. The thing that I don't like is this is the one that makes all the decisions and does all the code stuff, but I don't see that as my role. I have to help the other people getting their job done, so that's an important factor of the things I do day to day. Freek Van der Herten: And there's also a little bit leading the company a little bit, because I'm a partner there, so there's a lot of corporate stuff I need to do there as well. But the best thing is- Matt Stauffer: How many people are- Freek Van der Herten: The best days are the days that I can program myself. Matt Stauffer: Yeah. I totally feel you. How many people are on your team? Freek Van der Herten: Right now, it's seven people. Matt Stauffer: Okay. So the two of you. Is that five programmers, or are there any non-programmers on the team? Freek Van der Herten: There are now two non-programmers. Actually, we're at eight. We had a new hire two weeks ago. We're at eight now. Matt Stauffer: Congrats. Freek Van der Herten: We're with five programmers, one designer, and there is a project manager. So they handle client stuff. Matt Stauffer: Right, right. Freek Van der Herten: But our focus is in programming bigger Laravel applications now. So we started with smaller CMS kind of sites. But we moved on a little bit to the bigger things. That's also a story in itself, really. Matt Stauffer: Cool, yeah. Yeah, I don't know if we're going to have time for it, but I'm actually very curious about that story. But I have to pause this one time. Is there a sound at the end of the name of your company or not? Is it purely just Spatie? Freek Van der Herten: Yeah. Matt Stauffer: Cause sometimes I hear a little T, and sometimes I don't. Freek Van der Herten: No, it's Spatie. It's like, your pronunciation for Spatie is 10 out of 10. It's perfect, it's good. Yeah. Just Spatie. Matt Stauffer: Okay. Yeah. Spatie, okay. See, I was saying Spat-zie for a while, with a T. So Spatie (Spa sea). Freek Van der Herten: Spatie. Matt Stauffer: That's it. Freek Van der Herten: Yeah, yeah. That's perfect. Matt Stauffer: Okay. Now it's 10 out of 10. I got an 8 out of 10 the first time, you didn't even notice. Okay. All right, so I do want to talk about your relationship with the company, what kind of stuff you're all doing, 'cause I think that there's a lot of companies that do Laravel, and there's not a lot of companies that have public presence that are creating a lot of content and stuff like that. Matt Stauffer: And so I think what I want to know is, let's not even talk about the company yet. Let's talk about you. When did you go from being a programmer to a programmer who had garnered a reputation as someone who created packages and taught stuff? How intentional was it, what did that transition look like? What was Freek being a programmer who did web stuff to being Freek being a well-known teacher? What'd the shift between those look like? Freek Van der Herten: Well, it certainly wasn't intentional. I think now, six or seven years ago, we were still ... This was the time before we did Laravel. We were creating sites with Zend Framework 1. CMS kind of sites. And I remember getting a little bit bored with it, because at the time, the B2B world was becoming a little bit stale, I thought. This was also free composer. There was another ecosystem that attracted my attention, and it's really no surprise. That's Ruby, Ruby on Rails. Matt Stauffer: Rails, yeah. Yeah. Freek Van der Herten: That's a story I share with a lot of people in our community, I think. So I created a few Rails sites, and I thought, yeah, we're ready to jump ship off PHP. PHP is done. But then Composer happened and Laravel happened. So we started doing Laravel sites, and in Zend Framework, we had this whole CMS, a homegrown CMS build up, and I wanted to have that in Laravel. Freek Van der Herten: Now, I wanted to do it a piece at a time, and at the time, there was this guy called Jeffrey Way. He started Laracasts. Matt Stauffer: This little site. Freek Van der Herten: Yeah, this little site. Very small. And he put out a video of how to use Travis and GitHub together. And my mind was a little bit blown that you could just run your tests and see in the interface of GitHub if your tests were passing or not. And the lesson of Jeffrey was also around package development, and I thought, yeah, I want to do that as well. So I'm going to try to write a package. Freek Van der Herten: And I think one of the first ones was ... I think the Geocoder one, which was a wrap around the Geocoder service of Google. Or it was a Browsershot, maybe, which was a package that used PhantomJS to create screenshots of a web page. And I put that out, and some people liked it, which was mind-blowing to me. There's somebody here that did a pull request to fix a typo? Wow. This is really awesome. Freek Van der Herten: So I thought, yeah. I have to write another package. And when I took a look again at the Zend Framework 1 CMS, I saw, yeah, there's MailChimp in here. There's Google Analytics. There's something called the media library to handle assets. And I thought, yeah, these are all packages. Maybe I should package them all up for Laravel, so it wasn't planned, but I spent the next two or three years just doing that, putting that out. Matt Stauffer: Just repackaging, yeah, yeah. Freek Van der Herten: Just repackaging the old Zend Framework in code, Zend Framework 1 code, to modern packages with all the stuff I learned on Laracast. Freek Van der Herten: Now, at the same time, I was still the only programmer at Spatie, so we were only a three-man company. And we had an internal platform, something Microsofty, I can't remember the name, where we put interesting links on. And I was discovering so much interesting good content on the internet, and I'd post it there. But my two colleagues, the project manager and the designer, would say, "We're not interested in the deep programming stuff that you're putting there. We're interested in the ideas, but not in the nitty gritty details." Freek Van der Herten: So then I thought, hey, I'll just start a blog and I'll just put those things publicly on there. This is the stuff that interests me, maybe other programmers are interested as well. And with that combination, with starting a blog and writing about those packages, I guess, yeah. It picked up a little bit from there. People just liked the contents that was there, both my own stuff as the links that I shared. And yeah, it totally grew from there. Freek Van der Herten: But it certainly wasn't planned, like we were going to be well-known with this, that was the plan from the get-go. Matt Stauffer: Yeah. I noticed this initial commit on Browsershot is May 2, 2014. Freek Van der Herten: Yeah. Matt Stauffer: So four short years ago. Freek Van der Herten: Yeah, yeah. So yeah, I did a lot in the past few years. Matt Stauffer: Yeah. I think that it really helps to have some kind of structure to work along. The structure you're saying is, hey, you know what, I'm going to take this list of packages and I'm just going to work through them. And those sorts of structures that just give you something to work on next means you're never stuck asking the question, "Oh no, what do I do next?" You've always got something, you've just gotta make the time and put the effort in. Freek Van der Herten: Yeah, sure. And nowadays, actually the couple of past years, the most packages get born in client projects. So if there's a client project that's API-heavy, that we create some packages to make API development a little bit more easy in Laravel. And I also want to mention, because I'm talking about me here a lot, but now it sounds like that I'm the only one creating packages, but my colleagues do a tremendous amount of work on that as well. I want to emphasize that the open source efforts are a team effort, so it's not me alone. Although I'm the most known one, my colleagues, Brent, Alex, Seb, and Willem, do also incredible stuff out there. Matt Stauffer: Yeah. And actually, that's one of the things I was going to ask, because we're always figuring things out at Tighten ... We give everybody 20% time, so quite a bit of the work that's done at Tighten is done on those Fridays, but not all of it. Sometimes people are doing stuff on their own personal time. And you and I have talked a little bit in the past about what that looks like for you all, especially because you put out just such a prolific number of packages as a company. Are you able to make that much time available, or are people doing work at night? Matt Stauffer: So you and I have talked about it, but again, let's imagine that we have not. What does it look like for you, and what does it look like for the other people on the team, and how much of this stuff are you doing during the day job, and how many hours are you and the other folks working in the evenings, or nights and weekends, I guess? Freek Van der Herten: Well, for the company, we always plan the stuff that we need to do on Monday. We sit together and we say, "Hey, you're doing this this week. You're doing that this week." And we only plan four days. So for the fifth day, you can do whatever you want, but that fifth day, that isn't a separate day. It's like, the time in between. It's when you're bored with this project, yeah, go do something open source, write a blog post or write a package or whatever. Freek Van der Herten: So we have one day a week for everybody that can work on this open source stuff. Now, that's the theory, but yeah, in practice, packages get made in project time a little as well, because they're made for the project. Matt Stauffer: Right. Freek Van der Herten: So it's a little bit hazy, where to draw the line, a little bit. Matt Stauffer: Sure, sure. Freek Van der Herten: And I know that I spend a lot of time also open sourcing a little bit after the hours, because I like it. And sometimes, colleagues, when they have this good idea or a good vibe, I notice that they too do stuff in the evening, even though that's really not required to do so, it's really because they personally like-- Matt Stauffer: Yeah, just kind of excited about it, yeah. Freek Van der Herten: --just like doing this. And I think we've made so many packages now, it's really not such a big effort for us now to work on a package, because we know what the good things, the basic guidelines are for a good package. We know that have to have tests, we know that we need to have good documentation, we know how things like a service provider works. We have empathy enough now to imagine how people are going to use our stuff. So because we've done it a lot, it gets a little bit easier for us as well to do too. So people sometimes ask, isn't that difficult to invest so much knowledge and time in that? But I think for a company, it's kind of easy, because it has grown a little bit in our DNA. Matt Stauffer: Yeah, yeah. Freek Van der Herten: And if in a project, a colleague of mine says, "Hey Freek, should I package this up?" My default answer is, yeah, if you can do it, just do it. Take a couple of hours. Or if it's a bigger package, a couple of days extra, and just do it, 'cause we will benefit from it anyways. Maybe not because we are going to attract clients with it, but the programmer who made the package will become a better programmer. For Spatie it's good, because we have something in our package tool developed a little bit more. I always, when somebody takes an effort of making the package, I make sure that I mention the principal author of that package, which is not always me, also, on things. So everybody benefits with this. Freek Van der Herten: And I wish more companies would do this, 'cause if you take some time to do this, it isn't hard anymore. It just becomes part of your workflow to do this. Matt Stauffer: It's interesting, because at Tighten, we have a little bit of an inverse culture. People say, "Oh, we should make a package out of that." I'm like, "Are you sure that you want to maintain that for the next four years, 'cause if you don't, then don't make a package out of it." And I've actually talked people out of making packages, because I know that they don't yet understand what the cost of being an open source author looks like. Matt Stauffer: And it's not that I'm ever going to tell anybody no, but I am going to tell them, make sure that you know the burden that comes on. The moment people have this package in there, in their three years out of date app, what kind of customer support you're asking. And so I'm actually talking people out of it frequently, and what I'm more likely doing is when somebody says something interesting, I'm like, "Have you written a blog post about it? Have you written a blog post about it?" And quite a few people are like, "Yeah, Matt, I just put it on the list of 40 blog posts you're telling me I'm supposed to write. You have to start giving me more than one day a week to do these things." Matt Stauffer: But, no, I love your attitude towards packages. And one of the things that we've talked about in the past is we need all kinds of types. And for example, the packages we have at Tighten, there's only a few of them, and we maintain them back to Laravel 5.1. And one of the things you mentioned, is you say, look, we keep up to the most modern versions. And if somebody else wants to fork it and make an older version, then they're welcome to do so. Matt Stauffer: And so each group, each company, each author, has different things to contribute and to offer. And so I love the more people that are willing to make those packages, the more of a broad spectrum we have of people who are willing to participate in some way, shape, or form. There might be some company or some person who comes along, and their goal in life is to maintain all of Spatie's packages back to Laravel 5.1 or something like that, who knows. So each person is contributing a different thing to the community. Freek Van der Herten: Yeah, sure. Yeah, the cost of being a maintainer, it's a high cost sometimes. Matt Stauffer: Yeah, yeah. Freek Van der Herten: It's good that you make people aware of that. For us, we carry the load as a team, so everybody does a little bit of maintenance, and we have the pleasure of having a lot of people in the community helping us out as well. For every package there are a lot of contributors there, so, yah, I'm pretty happy where we stand right now. And I've also learned to sometimes just let it go, you know? Two or three or years ago I wanted to have the issue count as low as possible, and now I've learned that that really isn't important, if there's some more stuff to do, just leave it open. I'm not obliged at all to do this kind of work unless I'm very happy to do it myself, you know? Matt Stauffer: Yeah, for sure. Freek Van der Herten: And this idea that you should be happy with this kind of work—that's also where that idea comes from, that we only do the latest Laravel version, that we do the latest PHP version. Because this is what we use on our own project, and these are the versions we like working with. Nobody on our team liked working with the older Laravel versions. I'm not saying the older Laravel versions are bad or something, but we take the most joy from working with the latest stuff. So it makes sense for us only to do support for the later stuff in our packages as well. Unless it's very easy to support older things, then we do that as well, but we're also not afraid to just abandon an old package if we just don't like it anymore. No? It's not like anyone is going to sue us. Matt Stauffer: Yeah it comes down to the question of what do you feel obligated to do? And I think there's often a perception, right or wrong, that once you put that code out there, you're obligated to maintain it. And interestingly I see both sides of the issue. On the one hand, I don't think that you could be forced to do anything. On the other hand, I could imagine somebody saying, "Well, I can't." Matt Stauffer: We have a lot of clients who can't upgrade to the latest Laravel or the latest PHP, because they're stuck on whatever Red Hat releases and they're several versions behind, and they're saying, "Man I'd really like to use that new Spatie package but I can't." But at the same time, what's the inverse? You have to do something? No, nobody can force you to do anything. I have bounced back and forth a lot of times. And I think where I've ended up is just saying, nobody can be forced to do anything. Matt Stauffer: Each person needs to be honest about what they're planning to do, and also the world needs to allow them to change what their plans are if they change what their plans are. And as long as your not manipulating or tricking people. Then you're an open source contributor, who's putting work out there in the world. People can consume it, and if they're not happy with it, they can take the responsibility to fix it up. If they're not willing to take that responsibility to fix it up then it's kind of like well, you're getting free stuff. Don't look a gift horse in the mouth, is an American saying. Matt Stauffer: So I'm very sad because I have to go home to take care of my kids, but I can't leave just on that note because as always I ask people in Tighten what questions they have for you. I can't ask all of them because of my timeline. But I am going to at least ask you a few of them. So especially the ones that are the most esoteric. Number one, how many post cards do you get per month? Freek Van der Herten: We should get more. It's about, between 15 or 35. Something like that. Matt Stauffer: Your packages are postcard-ware. Which means basically, what you ask people to do is, if they use the package, consider sending you a postcard from where ever they're from. Freek Van der Herten: Yeah. Matt Stauffer: I assume that most people don't feel the pressure to send you 5,000 postcards if they use your package, but you probably should at least get one postcard from each user. So listeners, if you've ever used a Spatie package somewhere, consider going and buying a postcard from your local and going sending it. They've got a thing on their website about it, I'll link it in the show notes. But it sounds like that number should be a little bit higher, so let's all go chip in there to thanks them. Freek Van der Herten: Thank, Matt. Matt Stauffer: The next random question, I don't even know how to pronounce this, so I'm just going to read the words in front of my face. Did Romelu Lukaku deserve the golden boot? Freek Van der Herten: Yeah. I think he does. Or even Hazard. Matt Stauffer: Okay. Freek Van der Herten: Those are two football players if you don't know. Matt Stauffer: I have no idea at all. There's a lot of people taking care about this but I don't, so. Freek Van der Herten: I'm not that big into football, but I did watch for the world cup. That's when I'm interested in the Belgium team. Looking at Belgium matches this time, was really amazed what our player Eden Hazard could do. Did some amazing stuff. So that's your answer. Matt Stauffer: Several people asked this, but I feel like you're not going to have this list ready. So if you don't have this list ready, just say, "I don't have this list ready." Some people asked, what packages have you made that have been adopted into the Laravel core. Freek Van der Herten: I think none. Matt Stauffer: Oh really. Okay well that's a no list. Freek Van der Herten: Wait, there are none in the dependencies but there are that few were totally- Matt Stauffer: Absorbed, yeah. Freek Van der Herten: Inter locked with I think migrate fresh is one of ours. That Dale picked up on because we made it. And I think there is another one, where if you, in Tinker, use a class name that it can fetch the fully qualified class name. We packaged that up. Matt Stauffer: Yeah that was Caleb right? Freek Van der Herten: That was from Caleb. Matt Stauffer: Very cool. Alright, I didn't realize that got pulled into the core. Freek Van der Herten: Yeah, and that's in the core now, if you open begin session, and do one of the classes there, then it will try to get the fully qualified class name. Matt Stauffer: I like that, it's a joint Tighten Spatie effort. Freek Van der Herten: Yeah, cool. Matt Stauffer: Jose asks, which Artisan commands do you use the most? Freek Van der Herten: I think Tinker all day. All day I use Tinker. Matt Stauffer: Interesting. Freek Van der Herten: I have this package called Laravel Tail which can tail a log file. Matt Stauffer: That's the one that was pulled out of the old from the old Laravel right? Freek Van der Herten: Yeah, it was pulled out of Laravel, I don't know why. Because it was such a help. And I used it all day long. Matt Stauffer: I love it. Freek Van der Herten: Tailing stuff. Various make commands as well. So nothing too special there. Matt Stauffer: Alright, one last one. Marje asks, what was your most interesting challenge as a new developer? Freek Van der Herten: I think, getting to know the best practices in communities. It's so easy to adjust, to program a little thing, like a little PHP script, but how to do it well and how to structure it really well, that was really hard as a newcomer. To find good sources of information. And for PHP I know my way around. I know where I can find good stuff. I know where the people are. But if I want to get the feeling again, I know I can try to do some Elixir stuff or maybe even some JavaScript stuff and it's like I'm a newcomer all over again. Matt Stauffer: It's the difference between knowing how to do the thing and the best way to do the thing, right? Freek Van der Herten: Yeah, exactly. And it's comforting that in PHP, I have the feeling that I can be happy with the stuff that I write. I'm always learning of course. But it's difficult to have to in another language, because you're so familiar and it feels so warm doing PHP. But I have to force myself to do some other stuff as well. Matt Stauffer: Yeah, I hear that. Well, as always, I can tell, I can talk for hours on several of our subjects, but is there anything you wanted to cover that we haven't gotten to today? Freek Van der Herten: If I can make a shameless plug? Matt Stauffer: Go ahead. Freek Van der Herten: I launched my first software service project, a half year ago. It's called Oh Dear. It's like the best uptime tool out there. It can also detect mixed content, when your certificates will expire. Things like broken things, you will get notifications from that. It's something, I'm really proud of and you should check it out. It's ohdear.app. Matt Stauffer: Yep. And we will link all this in the show notes. I will make sure that is all available there. The pricing of Oh Dear, it's based on the number or sites right? Freek Van der Herten: It's based on the number of sites and nothing else. Matt Stauffer: Yeah, so your site can be massive. It can have 10's of thousands of pages and you're not going to pay extra for it. So, definitely check it out. OhDear.app we'll put this on the show notes, we're always down for the shameless plugs. You took your time to talk to us so, we got to show you some love. Freek Van der Herten: Alright, thanks man. Matt Stauffer: Alright, so if someone wants to follow you, where's the best place for them to go to do that? Freek Van der Herten: I think it's twitter, is a good way. So by having this @freekmurze it will be in the show notes as well I presume. Matt Stauffer: Yep. Freek Van der Herten: Or by murze.be where I talk about the package developments that my team and I are doing. And where I link amazing articles of others as well. So my blog and my twitter account, that are the best ways. Matt Stauffer: Love it. Thank you so much for everything you do for our community. Thank you for your time, I'm sorry I'm cutting us short, we can keep going but, look forward to seeing you soon and thank you so much for joining us today. Freek Van der Herten: My pleasure Matt, thanks. Matt Stauffer: Thank you. Bye bye.

Free the Geek.fm with Matthew Setter
Episode 29 - Talking Zend Framework, Career Progression, and Conference Nerves with Matthew Weier O'Phinney

Free the Geek.fm with Matthew Setter

Play Episode Listen Later Dec 19, 2017 61:53


In this episode, I have the absolute pleasure of speaking with one of my mentors, Zend Framework project lead, Matthew Weier O'Phinney. In addition to being a very experienced developer, Matthew's a very thoughtful and considerate person.

Zend Framework Quick Bites
Episode 42 - What Does It Take To Start Using Zend Expressive?

Zend Framework Quick Bites

Play Episode Listen Later Nov 20, 2017 2:54


What does it take to start using Zend Expressive? That’s the question I ask in the latest post on Master Zend Framework (https://www.masterzendframework.com/what-does-it-take-to-get-started-with-zend-expressive/) and discuss in this episode. Honestly, Zend Framework — and especially Zend Expressive — aren’t hard to get started with! So in this episode (and post) I set out to explode that myth. Along with that, I’ve got some community news, specifically posts in the community, along with some package updates. Grab a cup of your favourite beverage, have a listen to the episode and find out more about the first module of the upcoming course. As always, tweet me at @zfmastery (https://twitter.com/zfmastery) with any questions and input. Links The latest blog post: What Does It Take To Start Using Zend Expressive? (https://www.masterzendframework.com/what-does-it-take-to-get-started-with-zend-expressive/) Create caching middleware with #expressive (https://t.co/fpStacr6QP) Learn how to create custom middleware workflows in #expressive. (https://t.co/hMgT5rBSiJ) zfcampus/zf-apigility-admin 1.5.11 (https://t.co/unjVDhrJ3F) zfcampus/zf-configuration 1.3.2 (https://t.co/vrNkQbeVux) zendframework/zend-expressive-authentication-session 0.1.1 (https://t.co/CswzTKEaqs) zfcampus/zf-content-validation 1.3.6 (https://t.co/pnkKAdFAoS) Questions/Comments/Suggestions Tweet me at @zfmastery (https://twitter.com/zfmastery)

Zend Framework Quick Bites
Episode 39 - What Packages Do You Use in Your Zend Framework Projects?

Zend Framework Quick Bites

Play Episode Listen Later Sep 26, 2017 2:59


In this episode, I’m curious to find out what packages you use in your Zend Framework projects. This, as I go into in the episode, was prompted by what Jan Burkl said in his Middleware talk at PHP Day 2017, in Dresden, last weekend. So I’m keen to find out how your projects are composed, what packages you use by default, when Zend Framework (1, 2, or Expressive) are the core framework that underpins your application. Grab a cup of your favourite beverage, have a listen to the episode, tweet me at @zfmastery (https://twitter.com/zfmastery) with any questions, and check out the links below. Questions/Comments/Suggestions Tweet me at @zfmastery (https://twitter.com/zfmastery) Links Jan Burkl: https://twitter.com/@janatzend PHP Day 2017 (German): http://phpug-dresden.org/phpdd17 http://phpug-dresden.org/phpdd17

Zend Framework Quick Bites
Episode 36 - A Rapid Intro to Delegator Factories

Zend Framework Quick Bites

Play Episode Listen Later Aug 15, 2017 2:56


In this episode, come get a quick introduction to a very powerful feature in Zend ServiceManager, called Delegator Factories. Delegator Factories (https://ocramius.github.io/blog/zend-framework-2-delegator-factories-explained/) are: pretty much, a wrapper around a real factory: it allows us to either replace the actual service with a "delegate" or interact with an object produced by a factory before it is returned by the ZendServiceManager. They’re a very powerful feature that Matthew Weier O’Phinney put me onto while I’ve been writing the new book Zend Expressive Essentials (http://www.masterzendframework.com/zend-expressive-essentials/). I was stand-offish at first, but have been blown away by the power and flexibility that they offer. If you’re keen to find out how to create powerful and flexible middleware pipelines, then grab a cup of your favourite beverage, have a listen to the episode, tweet me at @zfmastery (https://twitter.com/zfmastery) with any questions, and check out the links below. Questions/Comments/Suggestions Tweet me at @zfmastery (https://twitter.com/zfmastery) Links Zend Expressive Essentials Book & Course (http://www.masterzendframework.com/zend-expressive-essentials/) Zend Framework 2 Delegator Factories Explained (https://ocramius.github.io/blog/zend-framework-2-delegator-factories-explained/) Delegator Factories - Official Documentation (https://docs.zendframework.com/zend-expressive/features/container/delegator-factories/)

Zend Framework Quick Bites
Episode 33 - Where are the missing episodes?

Zend Framework Quick Bites

Play Episode Listen Later Jul 17, 2017 2:45


In this episode, I’m not saying anything at all about Zend Framework, Zend Expressive — even PHP. Strange, hey? Why? Well, this is a quick episode to explain why the episode numbers are missing a few in the sequence of late. Grab a cup of your favourite beverage, have a listen to the episode, and I’ll tell you everything. Questions/Comments/Suggestions Tweet me at @zfmastery (https://twitter.com/zfmastery)

missing strange php zend framework
Zend Framework Quick Bites
Episode 29 - What is Your Favourite (or not so preferred) Part of Zend Expressive

Zend Framework Quick Bites

Play Episode Listen Later Jul 4, 2017 1:50


In this episode, I’m handing control over to you! That’s right, I want to know what your favourite (or not so preferred) aspect of Zend Expressive and/or Zend Framework are. Why? Because I want to continue improving the quality of the tutorials (as always). And I can only do this by getting your input. So, grab a cup of your favourite beverage, have a listen to the episode, and share your thoughts, input, feedback, and ideas with me - @zfmastery (https://twitter.com/zfmastery). Questions/Comments/Suggestions Tweet me at @zfmastery (https://twitter.com/zfmastery)

Zend Framework Quick Bites
Episode 26 - Create Modules and Middleware with Command-Line Tooling Support

Zend Framework Quick Bites

Play Episode Listen Later Jun 12, 2017 2:51


In this episode, I’m discussing the latest tutorial: Create Modules and Middleware with Command-Line Tooling Support (http://www.masterzendframework.com/tooling/create-modules-and-middleware/). As a bit of background, Zend Framework hasn't had the strongest command-line tooling and scaffolding support, in stark contrast, other frameworks. However, that's all changed! In this tutorial, I’m walking you through how to use the Zend Expressive Tooling package to create modules and to migrate from version 1 to version 2 of Zend Expressive. In this episode of the podcast, I give you a quick overview of what to expect in the tutorial, plus a bit more background information about the package. Grab a warm beverage, and come find out more about Zend Expressive Tooling! Further Reading Create Modules and Middleware with Command-Line Tooling Support (http://www.masterzendframework.com/tooling/create-modules-and-middleware/) zendframework/zend-expressive-tooling (https://github.com/zendframework/zend-expressive-tooling) Questions/Comments/Suggestions Tweet me at @zfmastery (https://twitter.com/zfmastery)

Zend Framework Quick Bites
Episode 24 - Reflection Based Abstract Factory Overview

Zend Framework Quick Bites

Play Episode Listen Later Feb 7, 2017 2:44


In this episode, we’re talking about how to do rapid application prototyping and development with Zend Framework, by using the ReflectionBasedAbstractFactory. If you’ve not heard of it, it makes Zend Framework more Laravel-like, by (largely) avoiding the need to create factories to instantiate classes. I’m sure you’ll agree that this represents a MASSIVE time saver. It’s an excellent addition to Zend ServiceManager, one I’m sure will quickly gain a lot of traction. Grab a warm beverage, and come find out more about it! Further Reading How To Do RAD Prototyping and Development With The ReflectionBasedAbstractFactory (http://www.masterzendframework.com/rad-prototyping-and-development-with-reflectionbasedabstractfactory/) Zend ServiceManager 3.2.0 Release (https://github.com/zendframework/zend-servicemanager/releases/tag/release-3.2.0) Questions/Comments/Suggestions Tweet me at @zfmastery (https://twitter.com/zfmastery)

The PHP Roundtable
057: All things Zend

The PHP Roundtable

Play Episode Listen Later Dec 20, 2016 65:14


There's a lot more going on at Zend other than Zend Framework. We chat about the Zend ecosystem, from Apigility to Zend Certification and what Zend's role is in PHP internals.

Zend Framework Quick Bites
Episode 20 - The Composer Command-Line Essentials

Zend Framework Quick Bites

Play Episode Listen Later Nov 29, 2016 2:36


In this episode, let’s look at one of the most essential tools in Zend Framework’s (and PHP’s) wider ecosystem - Composer. I’m sure you’ve heard of and used it. But how well do you really know it? Do you just know composer install, update, and require, and some of the composer.json configuration? Or do you really know it? In this series, you’re going to take your skills to the next level; starting with the command-line. Grab a warm beverage, and come find out more! Further Reading Composer CLI documentation (https://getcomposer.org/doc/03-cli.md) Questions/Comments/Suggestions Tweet me at @zfmastery (https://twitter.com/zfmastery)

Zend Framework Quick Bites
Episode 19 - Have YOUR Say

Zend Framework Quick Bites

Play Episode Listen Later Nov 22, 2016 2:46


In this episode, I’m stepping back a bit from the usual flow and turning the mic over to you. I’m keen to find out exactly what you want to learn about Zend Framework, what the one feature is that you’re keen to know about. If there’s some way in which I can help you learn more effectively, more deeply, I’d love to know. Grab a warm beverage, and come find out more! Questions/Comments/Suggestions Tweet me at @zfmastery (https://twitter.com/zfmastery)

zend framework
PHPUgly
17:Trademark This

PHPUgly

Play Episode Listen Later Jul 2, 2016 41:41


Show Notes: https://github.com/PHPUgly/podcast/blob/master/shows/ep17.md PHPUgly - Episode 17 recorded June 30th, 2016 Sound Cloud Uncut Video Topics Let's Encrypt Trademark issues PHP Alpha 2 released October CMS version 1 releasing July 2nd Zend Framework 3.0 released EU's Crazy Cookie Laws The hosts Eric Van Johnson Twitter / Github / Blog / About.me Tom Rideout Twitter / Github / About.me John Congdon Twitter / Github Follow us on Twitter @PHPUgly Email us at Podacast@phpugly.com

trademark podacast zend framework
Zend Framework Quick Bites
Episode 3 - What is PSR-7?

Zend Framework Quick Bites

Play Episode Listen Later Mar 31, 2016 2:54


In this episode, I’m looking at PSR-7, the second of two core components which Zend Expressive (http://www.masterzendframework.com/zend-expressive-introduction/) is built on. Zend Framework team lead, Matthew Weier O'Phinney (https://mwop.net) describes it as: a set of standard HTTP message interfaces so that we can create an ecosystem in which PHP developers can create re-usable middleware that they can share. The PSR site (http://www.php-fig.org/psr/psr-7/) describes it as: common interfaces for representing HTTP messages as described in RFC 7230 and RFC 7231, and URIs for use with HTTP messages as described in RFC 3986. To find out more information on it, check out these key links: https://mwop.net/blog/2015-01-08-on-http-middleware-and-psr-7.html http://www.php-fig.org/psr/psr-7/ http://www.masterzendframework.com/zend-expressive-introduction/ https://github.com/zendframework/zend-expressive Questions/Comments/Suggestions @zfmastery (https://twitter.com/@zfmastery)

Zend Framework Quick Bites
Episode 1 - Getting Started

Zend Framework Quick Bites

Play Episode Listen Later Mar 26, 2016 2:35


This is the prelude, where you'll find out what the show's about, what you can expect, and what's coming up in future episodes. In a nutshell, it's: A bi-weekly, roughly 3 minute, show About all things Zend Framework, especially Zend Framework 3 Gives you all the latest updates, changes, and events in the world of Zend Framework and the wider ecosystem Stay tuned to learn all there is about Zend Framework! Questions/Comments/Suggestions @zfmastery (https://twitter.com/@zfmastery)

getting started zend framework
ZADevChat Podcast
Episode 32 - PHP with Etienne Marais

ZADevChat Podcast

Play Episode Listen Later Mar 10, 2016 51:24


We get to work understanding the world of PHP, that scripting language that runs the vast majority of the internet. Is it more than just Wordpress? Join us as we find out! Kevin & Len are joined by Etienne Marais, a senior PHP developer at Superbalist. Before moving to Cape Town, we met Etienne at the Johannesburg Laravel User meetup that he was organizing. Etienne points us to the TIOBE index, Netcraft's survey and Venturebeat's analysis of popular languages on GitHub, consistently showing PHP as one of the most popular languages in use on the internet today. Etienne has been using PHP for nearly a decade and helps our panelists get up to speed with how PHP has evolved and matured. Follow Etienne online: - https://twitter.com/etbal - https://github.com/etiennemarais - https://medium.com/@etbal Here are some resources mentioned during the show: * PHP website - http://php.net * TIOBE Index - http://www.tiobe.com/tiobe_index * Top 10 languages on GitHub according to Venturebeat - http://venturebeat.com/2015/08/19/here-are-the-top-10-programming-languages-used-on-github/ * PHP Usage based on Netcraft survey - http://php.net/usage.php * LAMP Stack - https://en.wikipedia.org/wiki/LAMP_(software_bundle) * PHP 6 or PHP 7 - https://philsturgeon.uk/php/2014/07/23/neverending-muppet-debate-of-php-6-v-php-7/ * HHVM - http://hhvm.com/ * Hack - http://hacklang.org/ * Laravel - https://laravel.com/ * Docker - https://www.docker.com * Vagrant - https://vagrantup.com/ * PEAR (Legacy package management) - http://pear.php.net/ * Composer dependency manager - https://getcomposer.org/ * https://philsturgeon.uk/php/2012/03/06/packages-the-way-forward-for-php/ * Namespaces in PHP - http://php.net/manual/en/language.namespaces.php * Travis & PHP - https://docs.travis-ci.com/user/languages/php * MVC Framework - https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller * TWIG templates - http://twig.sensiolabs.org/ * Blade templates - https://laravel.com/docs/5.1/blade * Smarty Template Engine - http://www.smarty.net/ * Zend Framework - http://framework.zend.com/ * Code Igniter Framework - https://www.codeigniter.com/ * Symfony Framework - https://symfony.com/ * PHP The Right Way - http://www.phptherightway.com/ * Eloquent Models (Laravel) - https://laravel.com/docs/5.1/eloquent * Doctrine Models (Symfony) - http://symfony.com/doc/current/book/doctrine.html * Angular - https://angularjs.org/ * React - https://facebook.github.io/react/ * Phing - https://www.phing.info/ * Packer - https://www.packer.io/intro/ * Ansible - https://www.ansible.com/ * Joburg PHP Meetup - http://www.meetup.com/PHP-Johannesburg-Meetup-Group/ * PHP SA 2016 Conference - http://phpsouthafrica.com/ And finally our picks Etienne: - Build something with Laravel & Composer - Lumen - https://lumen.laravel.com/ - Laracasts - https://laracasts.com/ - Terraform by Hashicorp - https://www.terraform.io/ Kevin: - Kubernetes - http://kubernetes.io/ Len: - Semantic UI - http://semantic-ui.com/ Thanks for listening! Stay in touch: * Socialize - https://twitter.com/zadevchat & http://facebook.com/ZADevChat/ * Suggestions and feedback - https://github.com/zadevchat/ping * Subscribe and rate in iTunes - https://itunes.apple.com/za/podcast/zadevchat-podcast/id1057372777

Free the Geek.fm with Matthew Setter
Building Your Brand as a Freelancer - with Gary Hockin (Part Two)

Free the Geek.fm with Matthew Setter

Play Episode Listen Later Sep 29, 2015 30:44


In this episode, I have, part two of, a fireside chat with, Zend Framework aficionado and Roave stalwart, Gary Hockin about the ins and outs of building both a brand and a reputation as a freelancer.

Free the Geek.fm with Matthew Setter
Building Your Brand as a Freelancer - with Gary Hockin (Part One)

Free the Geek.fm with Matthew Setter

Play Episode Listen Later Sep 14, 2015 62:23


In this episode, I have, part one of, a fireside chat with, Zend Framework aficionado and Roave stalwart, Gary Hockin about the ins and outs of building both a brand and a reputation as a freelancer.

IT-Компот
Zend Framework 2. Конференция Zend Framework Day 2012. Миграция проекта с ZF1 на ZF2 (Выпуск 32)

IT-Компот

Play Episode Listen Later Dec 5, 2012 72:53


Сегодня к нам пришли гости - Андрей Токарчук и Георгий Туревич. Вместе с ними обсуждаем Zend Framework 2. Вспоминаем прошедшую конференцию Zend Framework Day 2012. На конференции много говорили, какие профиты и проблемы принес новый фреймворк, затрагивался опыт использования. Далее, берем реально существующий проект на Zend Framework 1.x и размышляем, как с наименьшими затратами времени и сил перевести его на вторую версию фреймворка. Несмотря на то, что выпуск целиком посвящен Zend Framework, надеемся, все php-программисты (и не только) найдут что-то полезное для себя! В выпуске: - Конференция Zend Framework Day 2012 в Киеве. Что хорошего в Zend Framework 2. Опыт использования. - Миграция проекта с ZF1 на ZF2. Гости подкаста: Андрей Токарчук Георгий Туревич Ссылки: Zend Framework Day 2012. Слайды, фото и немного мыслей Zend Framework 2: The ClassMapAutoloader Composer и опыт его использования при совмещении ZF1/ZF2 Podsafe: J.1.0 - Frozen Paradise

composer href podsafe zend framework
/dev/hell
Episode 19: Almost An Apology

/dev/hell

Play Episode Listen Later Sep 17, 2012


After some downtime spent taking mental reps, Chris and Ed are back with a vengeance for one of our best shows. Joining us is Chris Shiflett, PHP fellow and security expert. They talk about how we interact with non-techie members of dev teams, what they’re doing with Node, the state of the Canadian soccer program, heavy vs lightweight frameworks, tribalism in programming communities, and the importance of balancing work with life. We also talk to Chris Shiflett about his role as co-founder of Brooklyn Beta, and what they’re trying to accomplish with the conference. If you’re more animal than man, you’ll do these things: Check out our sponsors, Engine Yard and WonderNetwork Follow us on Twitter here. Rate us on iTunes here Listen Download now (MP3, 42.1MB, 1:37:04) Links and Notes “A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects.” –Robert A Heinlein Read Write Web: Facebook Wants to Be Your One True Login Funkatron.com: We’re the Stupid Ones: Facebook, Google, and Our Failure as Developers Zend Framework Symfony Slim Flask Silex Jon Tan on The Pastry Box Project Paul Graham: How To Lose Time And Money Brooklyn Beta Beyond Beta Todd Park, US CTO Viktoria Harrison of Charity: Water

IT-Компот
hackPNZ, Do333eR, TrojanFlash о технологиях. (#0. Пилотный выпуск.) (слайдкаст)

IT-Компот

Play Episode Listen Later Mar 25, 2012 104:08


. . . Сидим в суши-баре "Красный дракон", вкушаем японскую кухню и пьем пиво. Разговариваем о технологиях, повседневной жизни айтишников, Как нам живется и работается в Пензе, как мы учились и начинали работать. Распорядок дня айтишника, лайфхаки, умные книги. В выпуске: Как TrojanFlash дошел до жизни такой. Акция #мудакинадорогах. Что, зачем? Резалты. Zend Framework - нет, Yii Framework - да! Валить или не валить из #penza Грядет Secon 2012. Постшоу Книги Роберт Кийосаки: Богатый Папа – Плохой Папа С. Макконнелл: Совершенный код. Мастер-класс. Мартин Фаулер: Архитектура корпоративных программных приложений.

href zend framework secon
Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

Quickly integrate HTMLPurifier into your Zend Framework application.

integration zend framework
Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

Integrate Doctrine 2 into your Zend Framework project. Drive with tests first!

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

Quickly integrate jQuery and jQuery UI into your Zend Framework project.

jquery zend framework jquery ui
Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

This screencast should help you setup Zend_Tool in your Zend Framework application. Zend_Tool is a command line entry point into your application. Currently, Zend_Tool is used to scaffold (build generic files) the Zend Framework project structure, modules, controllers, database table classes and other tedious processes. The goal of this video is to start looking at…

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

One of the pain points for folks who are starting to work with the Zend Framework is the Decorating functionality found in the depths of Zend_Form. I’ve witnessed countless instances when a developer becomes excited by Zend_Form’s easy-to-implement form validation and creation, only to become frustrated by countless hours of fighting with Zend_Form_Decorators. This video…

Connected Show Developer Podcast!
Is That A Phone In Your Pocket?!

Connected Show Developer Podcast!

Play Episode Listen Later Feb 21, 2010 54:08


In this episode, guest host Andrew Brust joins Peter to cover the Windows Phone 7 Series news from the Mobile World Congress in Barcelona. Also, Andrew and Peter discuss the latest developer & interoperability news, including: The Enterprise Library roadmap from the Microsoft Patterns & Practices team, Zend Framework’s support for Windows Azure, and innovation at Microsoft.

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

By popular demand, I’ve put together an introduction to Doctrine 1.2 integration with the Zend Framework. Doctrine is a fantastic ORM (object-relational mapping tool). If you’ve jumped from NHibernate or Hibernate and are itching to have a powerful tool for handling database relationships, Doctrine is probably your best bet. On the mailing lists, there’s a…

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

One of the big things that the Zend Framework has over other frameworks is the built-in locale and language tools provided by Zend_Translate and Zend_Locale. All this comes with plugins into Zend’s templating system via Zend View Helpers. This video covers setting up some language-friendly routes, writing a custom language switcher Zend Controller Plugin and…

translate zend zend framework
Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

I’d like to introduce Tawfek’s sequel to his video covering Debugging in Firebug with the Zend Framework. If you’re looking for a tutorial on how to write a custom Action Helper, or wishing to make your ajax development more robust with logging and profiling, then these 33 minutes will save you a pile of googling.…

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

Tawfek is back! This is part 1 of a two part series where Tawfek will be taking us through how Firebug and the Zend Framework can work together to provide non-intrusive debugging and accurate profiling information for an application. This is a great feature that every Zend Developer should know about. Browse or download the…

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)
Getting Started with the Zend Framework and WAMP Server

Zend Screencasts: Video Tutorials about the Zend PHP Framework (iphone)

Play Episode Listen Later Jun 21, 2009


This Father’s day, zendcasts is doing 2 videos back to back! There’s been a bit of talk in the comments about how to setup the Zend Framework on Windows. Thankfully, Tawfek Daghistani took some initiative and put together this short piece on setting up WAMP Server with Zend. For a first time doing a screencast,…

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)
Unit Testing with the Zend Framework with Zend_Test and PHPUnit

Zend Screencasts: Video Tutorials about the Zend PHP Framework (iphone)

Play Episode Listen Later Jun 11, 2009


I have to preface this video by saying that I’m still a bit of a novice when it comes to unit testing (especially in Zend). Also, I feel that I wouldn’t be able to take credit for the whole implementation. Here are some great resources on unit testing in the Zend Framework to beef up…

unit testing zend code coverage zend framework phpunit
Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)
Introduction to Zend 1.8: A look at Zend_Tool and Bootstrapping

Zend Screencasts: Video Tutorials about the Zend PHP Framework (iphone)

Play Episode Listen Later May 29, 2009


Zendcasts has now moved to 1.8.2! This video covers setting up a Zend Framework perspective in Zend Studio for Eclipse as a well as using Zend_Tool to get a project structure up and running. The second half of the video covers setting up Zend_Layout and a typical Zend MVC structure. Source code is available on…

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

This video is part 2 of my introduction to Zend_Form. These last two videos have been a bit long since Zend_Form has a lot of behavior. I’ve also included the source code for this video. Hopefully this will help you follow along. download the source here, I haven’t included the Zend Framework itself, but I…

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)
Adding an XHTML Strict Doctype and CSS File the Zend Way

Zend Screencasts: Video Tutorials about the Zend PHP Framework (iphone)

Play Episode Listen Later Jan 7, 2009


Using zend_layout, a CSS file and doctype will be set through some helpful tools provided in the Zend Framework.

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

The last video in a series showing how to setup the Zend Framework from scratch. This video goes through the steps required to create a Zend_Controller for handling error reporting as well as creating the main IndexController. Zend_Layout is also briefly mentioned as part of the MVC setup.

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

This video covers the code found in the Zend Quickstart guide for creating the bootstrap file. I create the index.php file which will handle all the browser requests to the Zend Framework.

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

Setting up a bootstrap.php file as part of a Zend Framework MVC structure. I also cover the preliminary steps in setting up a Zend Framework project in NetBeans. This video is part 3 of a series of short videos going through the steps required to setup a Zend Framework project from scratch.

Zend Screencasts: Video Tutorials about the Zend PHP Framework  (iphone)

Setup a Zend Framework folder structure in under 5 minutes.

BpNT Podcast - A Budapest New Tech Meetup hanganyaga

Ahogy említettem, a találkozók között megpróbálok érdekes, releváns anyagot készíteni nektek, szoftverfejlesztésről, technológiákról. Ebben az adásban a múltkori meetup eseményhez kapcsolódva Németh Ádámmal beszélgetek: - A jo-hely.hu mögött működő technológiáról - A Zend Framework használatáról - A szoftvertervezésről, modellezésről, UML, Use Case modellezés és dokumentálás, PHPDoc - Tervek a jo-hely jövőjéről - Beszélgetünk egy kicsit a legújabb, divatos microblogging-mániáról, a twitteről Tervezek beszélgetéseket a különböző fejlesztői platformokról, újdonságokról, ennek keretében ebben az adásban Smulovics Péterrel beszélgetek, a Microsofttól. Az említett témák: - Office technológiák, Ribbon UI használata a ti alkalmazásaitokban - Orcas, .NET 3.0 alapelemek - Microsoftos architekt találkozó - WFP/E platform, mi ez, hogyan lehet használni - WFP/E Mac gépeken További részletek és információk Péter blogján.