Interview With Cal Evans The Icon Of The PHP Community

About This Interview

This is the #6th set of PHP Interview to help aspiring PHP developers and PHP fans alike to get inspired by listening from those PHPeople who are already highly involved into the PHP Ocean and *being there* taming the waves and surfing better than ever to make themselves an Awesome PHP Expert both in their own eyes (for self-accomplishment) and for the PHP Community.

On the other side, this is an opportunity for new PHPers to get to know their “PHP Elders. I hope you will derive as much fun to read my interviews as I’m having by interviewing those awesome PHP people.

A Small Intro..

Photograph by Rob Allen

In this edition I talked with Cal Evans, the Icon Of The PHP Community. He is to the PHP Community what Pelé is to the Football world, just to tell you about the influence he has on the PHP world. He shares, helps, mentors, propagates PHP wherever and as much as he cans. He was previously Chief editor of Zend Technologies (@Zend), worked for iBuildings (@ibuildings) one of the biggest PHP service companies in Europe where he lead the growth of a PHP Center of Expertise and ex Mister ZendCon (@zendcon).

At the time of this writing, as per wefollow.com, he is ranked as the 3rd (out of 2,554) most influential person on Twitter for #php. If you ask me, he is  the #1 influential PHP guy on Twitter, why? Simply because at the #1 place we have the father of PHP, Rasmus Lerdorf (@rasmus) himself while the #2 place is taken by The PHP Community (@phpc) itself; these two are not PLAYERS (as in football player) of PHP (if football be an analogy to it).

Cal is someone who strives passionately to “help make the lives of developers better”, a real Nerd Herder – you can read more about Evans on his personal website/blog named “Postcards From My Life“.He frequently writes for Zend Developer Zone (@devzone) where he is the Editor in Chief, some of his latest articles are:

  • Using Doctrine 2 in Zend Framework 2
  • Using ClamAV with Zend Framework
  • phpcloud.com Quickstart guide

And Now The Interview…

>> Please tell us a bit about yourself

When I was 14 years old, I went over to a friend’s house for a sleep-over. He showed me his brand new TRS-80 Model 1 (yes, I am that old) and this program he had written where you could move the cursor around the screen and when you pressed the space bar, it would draw a dot. I knew at that point in my life that I wanted to program computes. To my 14 year old mind, this was the equivalent of becoming an astronaut. It was cool, cutting edge and all the girls would swoon over a computer programmer. Well, at least it was cool and cutting edge. 🙂

I’ve worked on everything from an Altos mini-computer running Xenix (yes, Microsoft’s license of Unix…my how times have changed – to systems that span the entire floor of a data-center in Santa Clara. In all my experience though, I’ve stuck with PHP the longest. The language itself is fine, it’s easy to use and I can get stuff done with it easier than I can with any other language. The greatest asset of PHP, and the reason I stay with it, is the community.

The PHP community may very well be the greatest feature of the language. So many great people that are all willing to sit down and share what they know. From the core developers, to User group leaders, to newbies who just wrote their first “HelloWorld” – The PHP community is awesome!

>> How you started with PHP

The very first website I ever built was built for my parents (now closed) company. I built it on Windows, IIS, ASP and SQL Server 6.5. It was awesome if I do say so myself and it grew to span two servers. Then it came time to upgrade. The upgrade for 2 licenses of Windows Server NT and SQL Server 6.5 was going to cost me $15,000 – just for the licenses. I was stunned.

We didn’t upgrade, we couldn’t afford that. However, when I began to look around I discovered PHP and Linux. I found that for about $,500, I could buy a new server, load RedHat on it, PHP, Apache and MySQL and rebuild the entire site in PHP. It took me about six months to totally convert the site to PHP and since then, I’ve not had to spend any money on things like operating system licenses. PHP has been able to do everything I need to do on website and while I look at other languages from time to time, I’ve never found any compelling reason to move.

>> How do you find PHP now as compared to when you first started

I started with PHP 3.5. Since then I’ve watched it grow from a useful web language to my tool of choice for web and cli programs I write. I don’t do much with the front-end, I have trouble drawing stick-figures, much less designing interfaces. PHP allows me to build out my ideas and then turn them over to talented people like The Lovely and Talented Kathy to actually make them usable and pretty. Over the years though I have found that PHP has only gotten more useful. Every iteration has some good and a few questionable additions but overall I love working in PHP today as much or more than I did when I wrote my first <?.

>> Based on your experience, what are the good and bad parts of PHP

The good part is easy. I love that in PHP I can write 20 lines of procedural code and hammer out a prototype. If that works and I like it, I can expand that into 5 objects – each in their own file – and about 200 lines of code plus another 300 lines of comments including the doc-block stuff. Finally if all that works fine and I like where it’s headed, I can download Zend Framework and re-code my idea into a full-blown application spanning 2 files, controllers, models, database connectors and views. All this with another 10,000 files of framework to back it.

Or I can decide that I like how the 20 lines of procedural code works and just use that. 🙂

The bad would be that others can write 20 lines of procedural code and blog about it. Some new programmer will find that code and assume that since it’s on a blog, it’s good code and use it in their application. PHP is a loaded gun with a hair trigger. I’m ok if you shoot yourself in the foot with it but don’t show others how to shoot themselves.

>> What would be the Top advice to a PHP beginner

GET INVOLVED! Join your local PHP User Group. (and if you look around and you can’t find one, start one!) Find a conference you can attend! In the US we have some great regional conferences like LoneStar PHP (@lonestarphp) as well as the big ones like php|tek (@phptek). In Europe, there are great conferences like PHPUK (@phpukconference), PHP Barcelona (@phpbarcelona), my personal favorite PHP Benelux (@phpbenelux), and the Dutch PHP Conference (@dpcon). The best thing you can do it get around other PHP developers. I guarantee that if you invest in a conference a year for two years, the third year you will be submitting talks and speaking.

Blog! Join an irc channel! Get yourself out there. If you want to be a professional PHP programmer than you have to get involved in the community.

>> To someone who wants to become a better PHP developer, what is your advice?

See previous answer. The only way to get better is to surround yourself with people who know stuff you don’t. That doesn’t mean they are smarter than you. I make this point a lot when talking to people who are thinking about speaking at User Groups or conferences. You know something that other people don’t and other people know stuff you don’t. Get out there, ask questions, discover answers and share what you have learned.

>> The best PHP book you’ve read

I haven’t read it but I’ve got it sitting here next to me at all time in case I need it “PHP and MySQL Web Development” by my friends Luke Welling (@lukewelling) and his beautiful wife Laura Thomson (@lxt). If you only buy one book on PHP programming, buy this one. If you can afford 2, get (@kpschrade) Kevin Schroeder’s “You Want to Do What with PHP?” It’s a lot more advanced but it will show you some of the odd things you can do with PHP.

>> A PHP blog or resource you highly recommend

I’m very biased on this. I love devzone.zend.com, phparch.com and techportal.ibuildings.com. Mainly because I started two of those (DevZone and TechPortal {@techportal} ) and currently write for two of them (DevZone and phparch.com). There are a lot of very good ones out there, it depends on what you are looking for. My personal favorites – mainly because they are friends – would be (@lornajane) Lorna Jane Mitchell’s blog and (@akrabat) Rob Allen’s blog. (If you are working in Zend Framework and you aren’t already reading Rob’s blog, you are doing it wrong).

>> The IDE that you use

Komodo by ActiveState. it’s not really an IDE so much as it is a very fancy editor. I love it because I can open ANY file with it, not just files attached to a project. I’ve even used it to open graphics…I don’t recommend this. 🙂

>> How do you debug your PHP code, do you use something like xdebug or krumo..etc?

I’m old school. var_dump() and print_r(). Occasionally, when I’m debugging back-end stuff, I’ll use file_put_contents(). I love xdebug and recommend it to anyone looking to use a debugger but I’m old and set in my ways. 🙂

>> A CMS that you think is worthwhile

I know I’ll be ridiculed for this but I manage 8 WordPress instances at the moment. It’s my go-to tool when I need to get a site up and running quickly and I don’t want to have to write anything myself. Say what you want about the codebase, WordPress (@wordpress) gets the job done.

>> A PHP framework you use and would recommend

When I have to use a framework, I use Zend Framework. I started working with ZF 0.02 when I was working at Zend. I like it and have great respect for Matthew Weier O’Phinney (@weierophinney), Supreme Allied Commander of Zend Framework. (Salute!) I am a very arrogant programmer. I assume I am at least as smart if not smarter than most programmers out there (I’m not saying it’s true, I’m saying I believe that). MWOP is one of a handful of programmers that I will openly point to and say “yeah, they are better than me“.

>> A unit test framework you recommend using?

PHPUnit. Sebastian Bergmann (@s_bergmann) is another one in that handful of programmers. Sebastian is scary smart and the work he has done on PHPUnit is nothing short of fantastic.

>> Your LAMP stack comprises.. ?

CentOS, Apache, MySQL and PHP. My current development server has 5.4RC3 on it even though RC7 came out today (at the time of this interview).

>> One PHP person that you admire and what strikes you about him/her

Michelangelo van Dam (@DragonBe) {read a similar PHP interview with Michelangelo}; aside from having the coolest name on the planet, Mike is a true friend and a brilliant programmer. (Yes, one of the handful) His work with the PHPBenelux User Group and Conference is *the* standard by which all other community members are measured by (and we all fall short). Mike’s talent takes him far but his drive and commitment to helping other PHP developers is what sets him apart. (and for the other friends I have that work just as hard as Mike, thank you for all that you do but they said I could only name one of you; Rafael (@rdohms), Stefan @Skoop, Remi (@Remi_Woler), Grumpy (@grmpyprogrammer), Ramsey (@Ramsey), @Funkatron, Lorna Jane (@lornajane) , Jeremy (@JeremyKendall), and the rest…you know who you are!)

>> One PHP project you really appreciate

Project? I guess it would have to be WordPress again. The why is simple, like PHP it’s ugly, got warts and people make fun of it…but it gets the job done every time.

>> One function that you like (or which you tend to use frequently)

apache_child_terminate() C’mon, how can you not see that function and giggle like a 5th grader? 🙂 Seriously though the 1 function I use the most has to be print_r(). It makes debugging a log easier and the fact that I can store it’s output to a variable or dump it to a file using file_put_contents() makes it my favourite function. (I said, I’m old-school)

>> One PHP Community that you recommend

There is only one PHP community, THE PHP Community (@phpc). Whether you are part of a local user group, an irc channel or just read a blog or listen to a podcast, you are part of THE PHP community. Stand tall and proud, there are a lot of us out there and we build a good chunk of the web.

>> The never ending debates on PHP would be.. ?

Which IDE is best. (The answer is of course they all suck, find the one that sucks least for you.)

>> In the next 5 years, how do you foresee the PHP ecosystem

With the growth of mobile apps and Microsoft’s push to make HTML5/JavaScript the lingua franca of Window s8, I see PHP’s future bright. It has matured to the point where the changes that are being made are no longer as earth shattering as they used to be. PHP is an excellent choice to build the APIs to which apps talk. While I am always looking at new languages and programming options, I don’t see anything right now that will unseat PHP as the best choice for web work.

>> Recently Microsoft has also started actively to concentrate on PHP, any comments on that?

Actually, they’ve been actively courting the PHP community for a while now. They used to host a get together called Microsoft Web Dev Summit where they would bring together core developers and high-profile community members to find out how they can better support PHP. (It was my great honour to be invited to two of them and to co-host one of them with the always wonderful Karri Dunn-Gruver) The end result is that PHP runs as well on Windows these days as it does on Linux. It used to be if you wanted to run PHP, you had to put a Linux server in your network. These days, that’s not so. If you have a Windows network, you can easily integrate PHP on IIS or Apache into your stack.

Microsoft has been a good friend to the PHP community for 5-6 years now and I am proud to say that I have a stack of business cards that represent friends new-and old at Microsoft.

>> If you had to go back in time, would you still choose PHP? What would you do different?

Yes I would still choose PHP but I would get involved in the community much earlier. I spent 5 years programming in PHP before I really got involved. Once I did and realized the entire world of resources available to me, I kicked myself for not doing it earlier.

>> The day you realised “You’ve made it to the A-List PHP arena” ?

I’m not now nor do I pretend to be an A-Lister in the PHP community. I am but a humble cog in the machine. The core developers are the A-List. I owe my career to them and their volunteer work. To any core developer, PHP contributor, or member of the documentation team, THANKS YOU! You guys rock my world and I can’t tell you thank you often enough.

The same goes for open source project leads and User Group leaders. Both of those are largely thankless jobs but without you guys and girls, I’d still be writing object oriented Pascal. Thank you to each and every one of you. (and quit calling me an A-Lister. In the PHP community that honour is reserved for people like Ben Ramsey, Rafael Dohms, and the like.)

>> Why you are successful and why others are not?

I fell into my position in the PHP community because of the vision of Mark de Visser (@markdevisser). When I interviewed with Zend, he was the Chief Marketing Officer. Mark, more than anyone I have ever met, understood the value of a strong open source community. Under his mentoring, I began to understand how powerful the PHP community is and how it works for all of us. Mark gave me a chance and it is now my responsibility to seek out talented people and give them a chance to pay him back.

>> Things that you’ve learned from being part of the PHP Community

Community Works! If I have a question, someone has the answer. If I have a problem, someone has the solution. If I just need to vent, there’s always someone out there willing to be my rubber duck.

>> How would you define ‘The PHP community’ to someone new to PHP

The greatest bunch of nuts ever to sit in front of a keyboard. Whether you are swapping jokes with Matthew Turland (@elazar) on twitter, listening to Chris Hartjes (@grmpyprogrammer) gripe about people not writing Unit tests on a podcast or in IRC being schooled by Liz Smith (@auroraeosrose) on how to do something difficult in PHP on Windows, everyone is smart, friendly and just a little bit nuts. If you find a member of the PHP community who just answers RTFM when you ask a question, just move on. Life is too short and there are too many helpful people out there to deal with idiots.

>> Michelangelo Van Dam said you were the most influencial person in his PHP life. Assuming I am passionate about PHP and want to “rise and shine” in this niche, what is your advice to me so that I can one day in turn say “this was the most influencial advice that someone gave me”.

Mike is way too kind.

The best advice is what I’ve already said, GET INVOLVED. it’s hard to get noticed if you aren’t blogging, tweeting, speaking and an active member of the PHP community.

Take Chris Cornutt (@enygma) as an excellent example. Chris is a great programmer, no doubt; but there are a lot of great programmers out there. I know Chris because he put himself out there. Chris runs phpdeveloper.org, which I should have mentioned when you asked about blogs because if you only read one, this is THE ONE you have to read. he also started http://joind.in. He submits to conferences and I believe he was one of the founders of the LoneStar PHP conference. If you meet Chris, he’s humble almost to a fault. he won’t tell you about all the great stuff he does for the PHP community or all the hours he has spent slogging through piles of blog posts to find the one or two real gems. He does all this on a volunteer basis, he’s got a day job like the rest of us.

So if you want to get noticed, if you want to “rise and shine” in the PHP community, get out there and start making noise.

>> Can you please tell us what it takes to create a php user group, the challenges, the responsibilities and maintaining the group, etc..

It takes persistence. I don’t know a lot about running a successful PHP User Group; when the Nashville PUG elected me president in 2006, it took me exactly 2 months to kill the group. 🙂 It wasn’t until Ben Ramsey (@ramsey) moved to Nashville in 2010 that it was revived. Now Ben, Ryan Weaver (@weaverryan), and Jacques Woodcock (@jacques_thekit) run a growing group and they are kind enough to include me in the leadership; danged if I know why. 🙂

(Wasseem: Just a little note here, I was confused with the word “danged” and Cal told it’s a US Southern slang term used in polite society for the word “damned“)

>> As an Icon of The PHP Community – could you briefly tell us how was The Community in its early days, how you find it now and where it’s heading.

When I first got involved in the PHP Community, it was already thriving. I can remember hanging out in #phpc on irc.freendoe.net back in the days when there were only 15-20 of us. It was a great time. While I wasn’t able to attend, I remember when the real A-Listers like Elizabeth Naramore (@elizabethn), Ben Ramsey, and the gang held the first PHP Appalachia at a camp-ground. (I made the second one and that is a story for another day) ZendCon and php|tek were the big conferences in the US and there weren’t many regional conferences.

These days you still have a lot of the old-guard like Ben and Liz but there are a lot more people out there contributing to the community. ZendCon and php|tek are still growing strong but conferences like ConFoo (@confooca) is growing from its humble roots as PHP Quebec and you have new ones springing up like LoneStar PHP and The PHP Community Conference. The community is growing and new people are coming in each day. It’s up to those of us who have been active for a while to hand down the traditions to the new-comers. Traditions like explaining who Rasmus (@rasmus), Andi (@andigutmans) and Zeev (@zeevs) are and that there are thousands of people who have volunteered their time to make PHP great and we owe them a debt. PHP programmers like me really are standing on the shoulders of giants.

BTW, if you do attend a conference or user group and run into a core developer, investing $5 in buying them a beer is a great way to say thank you.

As to where it’s heading, I don’t see any signs that PHP’s popularity is waning and as such I only see great days ahead for the community.

>> Do you believe it might be correct if I say that “The PHP Community is the most generous community when it comes to sharing of knowledge, helping each other and promoting it’s cause (i.e PHP) freely with passion”?

Absolutely! I used to work in FoxPro. The @FoxPro community was a lot like the PHP community in that we all shared what we knew. This was pre-Internet so we didn’t get together much on-line but we had CompuServe and bulletin boards to keep the conversation going and FoxPro’s DevCon was the social event of the season! Then I moved into ASP development and boy was it a shock. I would ask questions in forums and the most common answer was “You can buy my book” or “I can help you with that, hire me”. There wasn’t a lot of sharing going on, everyone had their hand out. The PHP community is wonderful in that everyone from the core developers to grunts like me all share what we know.

>> Can you tell us a bit about Day Camp 4 Developers and how can anyone around the world benefit from it

DC4D came about out of a frustration of mine. I’ve been organizing PHP conferences since 2006. Each time I look at the proposals that are submitted, there are 5-10 that really stand out as great sessions but they aren’t technical. People go to conferences to learn hard skills and that’s how they sell them to their bosses. So those sessions usually don’t get selected but they are sessions that developers REALLY NEED to hear. So I started DC4D.

DC4D always concentrates on non-technical skills but important skills none-the-less. I have a passion for helping developers and this is just one way I do it. We keep the price low so developers can afford to attend, even if their boss won’t send them and we hold it on a Saturday so you don’t have to take a day off from work. You also get a link to watch the videos. So if you can’t afford to invest a Saturday in your career, you can watch them in the evenings or on your lunch hour.

DC4D isn’t about making money – trust me, my speakers get a full accounting and they can tell you, they don’t do it for the money – it’s about helping developers.

>> It is said that you attend more conferences in a year than most people get to go to in a lifetime.

That used to be true. When I was at Zend I averaged 10-12 conferences a year. One time I was on the road for 5 solid weeks and home only long enough to swap suitcases. These days I have slowed down. I help organize php|tek and CodeWorks but don’t make it to many others, maybe 1 a year. That having been said, I have only turned down one invitation to speak and that was because I had a previous commitment to speak. I love talking to developers and am happy to speak to any group, large or small, as long as we can work out the logistics.

>>> How do you manage to achieve this incredible, but surely time and energy consuming, scenario?

Lots of coffee. That and a very understanding family. 🙂 (At one point, I walked into the house from a week or two on the road and my son looked at me and said “You here again?”) 🙂 Were it not for the love of my wife, the lovely and talented Kathy and the patience from my two wonderful kids, I would never have been able to do all I’ve done.

>>> Can you please share the good, and may be not so good moments, of being part of all those conferences (I assume you were also a speaker in most of them?)

The great moments at any conference I’ve been to, the ones I remember the most, are the ones spent with friends.

  • tek ’08 “Hellloooooo CHI-CA-Gooooo!” and drinking with the brilliant Ligaya Turmelle (@lig);
  • 12:30 AM in a coffee shop with Laura Thomson at MS MIX after having spent the evening at a very nice Vegas bar that Microsoft has rented for us.
  • “Not feeling well” as I am on stage at ZendCon 2007 introducing the CEO of Zend because the speakers party had been a little too good. (come to think of it, Ligaya was at that one too.) 🙂
  • Having a house full of friends talking shop and swapping stories while the PHP Community Conference was in Nashville – my hometown – in 2010.

I’ve got a long list of great times and wonderful friends from conferences. You don’t have to attend 1 a month though to build that list. Every PHP conference I’ve ever been to has legends. To be a part you have to show up. 🙂

>>> The best conference would be.. (Or may be the conference that has really marked your spirit)?

php|tek of course. 🙂 I’ve organized php|tek, ZendCon and DPC and each of them have a special place in my heart. tek however, is my favourite because it’s small and intimate. If you attend tek and don’t get to meet the one speaker or community member that you really wanted to meet, it’s because you didn’t walk up to them and say hi. It’s a very friendly conference.

While it wasn’t really a conference per-say, PHP Appalachia ’08 was the most memorable event I’ve ever attended. But you’ll have to buy me a drink to hear that story. 🙂

>>> What are the main aspects of conferences that can really help a PHP guy to get better in his progression

It’s not the sessions. The sessions are how you convince your boss it’s worthwhile to go. Once you are there, park yourself in the lobby of the hotel and start meeting people. It’s what we call “the hallway track” – a term I believe that was coined by PHP Community luminary Chris Shiflett . (@shiflett) (Chris is also one of the handful and another scary smart person.) The conversations you have between sessions, the friendships you make during the parties, the sharing of ideas at the unconference or hack-a-thon, those are the most important parts of a conference. If you go to a conference, don’t plan on attending a session in each time-slot. Save a couple to just hang out and see who is around.

>>> Things that you would like to see or being implemented at conferences

More timeslots. If I had it my way we would go dawn till dusk for 5 days and then party and hang out from dusk till dawn. Sleep when you are dead, if you are at a conference and you are in your hotel room, you are doing it wrong. (or your old like me) 🙂

>>> A final word before closing up..

PHP is a great language, it runs ~60% of the web. If you are a PHP programmer, be proud of that. Get up off your butt and get involved in the community. You need us but more importantly, we need you!

Now Do Your Part!

1) Help diffuse this interview to the PHP ecosystem – Share, tweet and spread the word to your audience ==> That would be a FREE way to thank me 😉

2) Make a comment below using the comment form – I’m sure you can at least say 1 word about this interview

{I’m thankful to your response(s)!}


17 Comment(s)

  1. great interview, it gave encouragement to me as a semi-pro developer.

    NB: the social media scroll-bar at left screen is very annoying, I can’t see what behind it. I’m using Chrome 16.0.912.77 m btw.

  2. Wassem and Cal, great interview. 😉

    Cal is right about getting involved: tweet, blog, ask/answer on StackOverflow, spend some time on IRC, attend some conferences, start/attend local user group sessions, etc. I consider myself to be weaker and dumber than most of the developers out there (my own psychological pathology), so I find all those things terrifying. But every single one that I have done has helped me to become a better developer and the community has been very tolerant/supportive.

    tl;dr: Get “out there” in whatever way you can.

  3. @waro: I think it’s a screen resolution issue.

    @Michelangelo:
    Thanks a lot (@DragonBe) for dropping by and for your comment. Really nice to you see around. Yes I have really felt that “humbleness” with BOTH of you 🙂 *hats-off*

    @David:
    Thanks for sharing a bit of your personal experience and for the kind words.

    Cheers!
    //Wasseem

  4. Great interview – both questions and answers. Was just going to skim it quickly and read it later, but once I’d started, I couldn’t put it down. 🙂

    P.S.: If you’re on twitter, follow @CalEvans to get his excellent daily motivational message. I look forward to them every day. 🙂

  5. Great interview, Cal manages to inspire us all with his words and always positive attitude. Thanks Cal for everything you do for the php community!

    By the way, it isn’t mentioned in the article, but Cal is also one of the board members for PHPWomen.

  6. Really great article! In fact the whole set is great and I recommend every PHP developer to give it a read.

    Great idea Wasseem!

  7. Hi all!

    First, thanks for all the comments, I am so glad everyone liked the interview.

    @dragonbe, as always, you make me blush. 🙂

    @Lineke, how could I have forgotten that?!? Being on the Board of Directors for phpwomen.org is one of the great honors of my life. I hope I serve them well.

    =C=

  8. There are actually two words I can say about it: “Thank you”. Never have I read something ending in =C= and got disappointed about. (@CalEvans)

  9. Great web site. Lots of helpful information here. I am sending it to a few friends and also sharing in delicious. And certainly, thank you for your sweat!

  10. Cal Evans. He is really god father for many PHP developers. He is a role model for me. If I am achieve 10% of his knowledge, it is a god gift.

    I too spending lot of time to upgrading with the latest technology in PHP

  11. The link to Chris’s site in this line “Chris runs phpdeveloepr.org” appears to be typo’d.



Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.