DEV Community

I've been coding for 20 years, Ask Me Anything!

Matt Sparks on May 16, 2019

My first website was built on GeoCities! I remember the original browser wars! I may or may not belonged to a webring or two. I've worked for succ...
Collapse
 
vuild profile image
Vuild • Edited

Hey Matt,

Another ent. 🔥 Lots round here recently.

What's your favorite Internet thing so far?

Have we finally decided between .php or .php3 urls?
vbulletin.com/forum/forum/vbulleti...
Edit: better link

Collapse
 
mattsparks profile image
Matt Sparks

My vote is for PHTML 🤓

Collapse
 
vuild profile image
Vuild

Correct. 10 points.

You get to move to the next level.

Where is .cfm now? 😭

Thread Thread
 
mattsparks profile image
Matt Sparks

Wow I haven't thought about Cold Fusion in a very long time.

Thread Thread
 
vuild profile image
Vuild
Thread Thread
 
mattsparks profile image
Matt Sparks

I used this site a lot when I first started learning:

HTML Goodies

Thread Thread
 
vuild profile image
Vuild

Still looks good, that guy has a PHD.

flashkit.com some things never change.

2advanced.com it would be nice to keep the best stuff forever though. 🥺

If you are into UI (ppl reading) check out how it was done:
web.archive.org/web/19980130111920...
HTML still works, in 1000000000 years, it will still run. I try to keep close to it.

Thread Thread
 
flrnd profile image
Florian Rand

I went back in time to astalavista.box.sk times lol

Thread Thread
 
vuild profile image
Vuild • Edited

Florian, you never left.

Busy with warez, bumping threads while Matt teaches what 20yrs of programming is really like. Sparks fly. Ask him interesting questions, he was young but early & still here. Not that common a combo.

thepracticaldev.s3.amazonaws.com/i...

Collapse
 
steve profile image
Steve Zhou

DO you believe programming is for everyone ?

Collapse
 
mattsparks profile image
Matt Sparks

I wouldn't say programming is for everyone. Like any other skill, a person has to have a genuine interest and desire to learn.

That's not to say that only certain people can learn. Absolutely anyone can learn how to code. Even if you're not planning to be a programmer, learning the basics will give you knowledge and skills that can be applied to many different areas.

I would encourage everyone to give programming a try and if you like it, keep learning and improving.

If a dummy like me can learn, anyone can.

Collapse
 
ashkan90 profile image
Emirhan

Matt, hi! I want to ask you about calling methods in php. I'm working some crazy things for better PHP and I'm struggling with a problem that's calling non static method as static. Ex.
I've a method that's called 'tagShouldBe()' and it's not static

I also want to call it as static
blabla::tagShouldBe()

I don't understand how can I achieve it. If there's a way to do that than can you help me ?:)

Collapse
 
mattsparks profile image
Matt Sparks

What's the reason for not just making the method static?

Collapse
 
ashkan90 profile image
Emirhan

just thinking about Ram's health :d Actually there's no real reason for making methods static. Can you give me advice for this concept i just want to know better and better

Thread Thread
 
mattsparks profile image
Matt Sparks

I would advise you to just make the method static, BUT you can probably do something like this:

public static function TagShouldBe()  {
    return (new self())->tagShouldBe();
}

Again, this is very hacky and I don't advise it. You should consider refactoring your code to solve the problem in the way you want to solve the problem.

Thread Thread
 
ashkan90 profile image
Emirhan

i think making methods static should be fine and better than this 'hacky' thing :) Thank you for response I'm very appreciated.

Collapse
 
muhammadjewel profile image
Muhammadjavohir

Coming weeks I will start teaching frontend development, mainly markup part. Which skills/topics should I focus most during the teaching process? The course's duration will be 5 months, 3 times a week.

Collapse
 
mattsparks profile image
Matt Sparks

I would drive home the importance of semantic HTML.

The practical value of semantic HTML

Collapse
 
tdfranklinaz profile image
Trevor Franklin • Edited

What are some of the best resources to improve my PHP skills? I am a WordPress developer and I want to be sure I'm writing the best code possible on all my projects.

Thank you!

Collapse
 
mattsparks profile image
Matt Sparks

In my opinion, the best resource for learning about PHP at the moment is Laracasts. While is does have a focus on Laravel, there are a large number of general PHP topics as well (things other than PHP, too!). It's well worth the price.

Other than Laracasts, I would suggest subscribing to PHP Weekly and PHP specific blogs. A couple I like are:

Twitter is also a great resource for keeping up with the latest in PHP and web development in general. You can follow me @DevelopmentMatt 😎

Lastly, there's a growing number of PHP/development Podcasts out there. The first that comes to mind is Full Stack Radio

Collapse
 
tdfranklinaz profile image
Trevor Franklin

Really appreciate this I will definitely check out these resources!

Do you have experience with WordPress or have any tips for writing better code in WordPress?

Thread Thread
 
mattsparks profile image
Matt Sparks

I've worked with WP quite a bit in the past. If you're writing plugins (and I suppose themes, too) I would recommend making them as object-oriented as possible. It will go a long way in making them more maintainable and save you a lot of headaches.

Give this WordPress Plugin Boilerplate a look.

Collapse
 
olckara profile image
𝚘𝚕𝚌𝚊𝚢 • Edited

Do you think coding is getting harder and harder as you age? Some consider it as a young person job and older/more experienced coders should get involved in team-leading and/or more executive roles instead.

Collapse
 
mattsparks profile image
Matt Sparks

I'm only 33! 😝

Despite my bad hips and osteoporosis, I haven't found it harder to code as I've gotten older.

Collapse
 
lightalloy profile image
Anna Buianova

Have you ever wanted to leave IT/got bored of programming?
(I've been coding for 10+ years and I did, but I'm glad that I haven't quit)

Collapse
 
mattsparks profile image
Matt Sparks

I've never wanted to stop coding, but I've most definitely been burnt out and needed a break.

Collapse
 
lightalloy profile image
Anna Buianova

Have you ever taken long(ish) breaks?

Thread Thread
 
mattsparks profile image
Matt Sparks

Once I started doing development as a job I haven't really taken any breaks from doing that sort of work.

I write code as a hobby too and there have been times where I've gone a month or so without coding outside of work.

Collapse
 
rleija_ profile image
Ruben

What I like to do is continue adding other high level income skills and figuring out how they work well with programming.

e.g. - SEO & programming atm

Collapse
 
mattsparks profile image
Matt Sparks

Great advice! I agree 100%.

Collapse
 
letmypeoplecode profile image
Greg Bulmash 🥑

What misconception have you had to correct the most?

In 2011/12, when I got my ZCE, I had to educate A LOT of recruiters on the difference between being a Zend Certified Engineer (general PHP cert) and being Zend Framework certified (specific to Zend's monolithic MVC).

The Java/JavaScript thing STILL comes up with recruiters because of sloppy searches. :-)

Collapse
 
mattsparks profile image
Matt Sparks • Edited

I've had clients/managers assume that because I know how to code (in the general sense) that I can easily build anything that is built with code. I usually respond with, "I could maybe figure something out but it's going to take a lot longer than you would like. You'd probably be better off finding someone with experience in [whatever]."

"You know PHP, that's great! Can you build us some facial recognition software that uses AI to determine who a person is and their favorite beer?"

Collapse
 
muhammadjewel profile image
Muhammadjavohir

What do you think, what is the lacking part of learning programming using video courses?

Collapse
 
rleija_ profile image
Ruben

entertainment

Collapse
 
mattsparks profile image
Matt Sparks

Probably the ability to get feedback while you're learning.

Collapse
 
flrnd profile image
Florian Rand

Hey Matt, from your experience, what advice would you give to new developers interested in making a living as a freelancer without previous experience in development?

Collapse
 
mattsparks profile image
Matt Sparks

It's really hard to break into freelancing without previous experience of some kind. Generally speaking, clients want a developer who is quick and efficient. All of that comes with time and experience.

That said, the goal should be to get your first client and keep building. While you're searching for that first client, work on personal projects you can share to show off your chops.

Collapse
 
ianrathbone profile image
Ian Rathbone

Working for several startups - have you found what the secret is to a successful one?

Collapse
 
mattsparks profile image
Matt Sparks

A shared company vision with a well defined path forward.

Collapse
 
ianrathbone profile image
Ian Rathbone

Succinct!! 🙏

Collapse
 
eljayadobe profile image
Eljay-Adobe

What changes in the industry do you see coming on the horizon?

Collapse
 
mattsparks profile image
Matt Sparks • Edited

It seems that everything in web development, in some fashion or another, is cyclical. For example, it was best practice to completely separate your HTML, CSS, and JS. Now people advocate for putting CSS in your JS.

I'm not saying one or the other is better, just trying to make the point that the general consensus will be "do this" and it will change to "do that" and eventually we'll get back to some hybrid of "do this."

So, to answer your question I think we'll see Java Applets make a comeback soon.

Collapse
 
karataev profile image
Eugene Karataev

Do you want to be a PHP developer for another 20 years?

Collapse
 
mattsparks profile image
Matt Sparks

As long as PHP continues to improve like it has for the last few years, I'd be happy to use it for 20 more years.

I'd also be fine with picking up a new language to continue trying to make cool stuff.