Do you need advanced math to become a web developer?

March 18th, 2015

Hi,

I got into a minor debate with a freshly minted nerd, who was barely out of school … and so, lacking in experience. He thought that knowing advanced math was a requirement to become a developer. Well, that is largely not the case in the real world of software development.

… At least that’s what my 20yrs of experience has taught me. Check out the video of me yapping about this:

Thanks!

Stefan Mischook
killerphp.com

Why you should be teaching kids PHP, and not Python or Ruby

February 15th, 2015

These days, Python and Ruby are popular programming languages with the tech startup crowd, and so, many of the venture capital backed ‘teach code’ startups, have ruby or python courses targeted at kids. The problem is, that these are not the best languages to teach programming with – especially in K12.

Why PHP is better?

In a nutshell:

1. PHP is easier to learn:

Python and Ruby are object oriented language at their core, so to do anything with the languages, you really have to understand object oriented theory and principles. This adds an unnecessary level of complexity to new learners.

Yes, modern software development is largely object oriented, but my 10+ years experience in teaching web development, has taught me that it is better to teach basic programming concepts and techniques before adding the OOP (object oriented programming) layer.

PHP has both an object oriented layer and a much less complex layer that is ideal for teaching programming to new learners – especially younger students.

2. With PHP, it’s easier do real things.

With PHP, because it was designed specifically for the web, you can create web apps fairly quickly. On top of that, getting PHP apps live is also trivial – just upload the files to a PHP enabled server, and you are done. Try that with Ruby or Python!

Ruby and Python were not designed with web apps in mind. They were put together more as general purpose languages and have been adapted for the web. Yes, they are both excellent languages, but there is that additional layer of complexity when it comes time to actually creating a web app and going live.

…. These days, if you are creating apps, they are most likely web apps! So this is relevant.

3. PHP is BY FAR the most used web development language – it’s not even close!

If you are looking to put practical skills into you students hands, then PHP is easily the best choice. Check out this simple stat: over 80% of dynamic websites, that is to say, websites that are also web apps, are created with PHP. Ruby and Python together may add up to 7%.

In fact, what I hear from new programmers time and time again (after they learn Python or Ruby,) they discover that they have to learn PHP, since there are so many more jobs in the PHP world.

Consider this next stat, WordPress runs about 23% of the world’s websites!! Add in Joomla and Drupal (two other popular CMS’) and we are probably close to 30% of the worlds websites being run by 3 web apps created with …. PHP!

.. There is no equivalent in the Ruby or Python world.

The point here is that there is a huge ecosystem in PHP that no other language comes close to. When selecting technologies, we all know from the Apple Appstore, that the ecosystem is hugely important. It’s a big reason why iPhone is so successful.

Conclusion

It seems clear, if you want to teach kids (adults too!) more easily and you want them to be able to easily see their code actually do something real, PHP is the obvious choice.

Add in the market viability of the language and the growing probability that Ruby will slowly fall into a micro niche (it’s already niche IMHO) … then there is really no argument. You can see why Studioweb teaches programming with PHP.

Final note:

I chose to teach programming with PHP in 2004, NOT because I was a PHP programmer zealot. I’ve written software in 8 or so languages, I am language agnostic. In fact, my favourite language for years was Java … I’ve written more lines of Java code than any other language.

No, I still chose PHP to teach programming, because it was the best choice.

I hope you find this helpful.

Stefan Mischook
studioweb.com

Which Code Editor is Best for Teaching PHP?

February 15th, 2015

There are soooooooo many choices out there these days when it comes to writing PHP code. Here are just a few popular apps:

  • Sublime Text – uber-nerds love this one!
  • Notepad++
  • Dreamweaver – yes, it has a code editor too.
  • jEdit

And there are many others, and I am not including the PHP IDE’s out there!

A PHP IDE (by the way,) is short for ‘Integrated Development Environment’. It is a code editor on steroids. They are much more powerful than standard code editors but they are also harder to learn. These days (2015) PHPStorm seems to one of the best, if not the best.

… The guys who created PHPStorm, created my favorite IDE for Java – IntelliJ IDEA. My nerd-servants are telling me PHPStorm is amazing. But, when teaching beginners how to program in PHP (or any other language,) it is best to not expose them to the added complexity of learning a full blown IDE. They can be very complex.

Back to code editors – so which is best?

In a nutshell: If I were teaching PHP, I would use either Sublime Text or Notepad++ if I was on Windows. Sublime Text works on both Mac and Windows but the license is ambiguous: it is free to demo but at some point you are supposed to pay the $70 for it. Not sure when though? I heard of some users still demoing it after 2 years!

This is a consideration for schools in terms of licensing. On the other hand, Notepad++ is free but it is Windows only.

Textwrangler is a Mac only HTML, CSS code editor but I don’t see you could use it for PHP.

Stefan Mischook
killerPHP.com

Creator of Studioweb.com

Is PHP the redheaded stepchild of Web Development?

January 16th, 2015

Hi,

In defense of poor old PHP! The language everyone loves to hate … but so many still uses!

Each language has its’ strengths and weaknesses. So the one you choose is largely a personal thing. That said, the stats don’t lie, most of the dynamic Web runs on PHP.

If any Ruby, Java or Python zealot fundamentalist attack, just mention that Facebook is PHP based. Game, set and match.

:)

Stef

Learn PHP with Stefan

January 6th, 2015

Hi,

After a long delay (I wanted to get it right) my new subscription based training site is up and running – check out webmentor.org

Why join webmentor?

All my new videos will be there, you can ask questions right on the video pages, you have full access to the source files and my classic videos (that are still relevant) have been remastered in HD.

I’ve even written up a page on why learning PHP makes sense.

That’s all for now.

Stefan Mischook
killerPHP.com

PHP programming in 2015

December 11th, 2014

php logo

Hi,

The new year approaches and once again I will give you my assessment of where PHP will be in 2015. You might think me biased given killerphp is the name of the site … but you would be wrong. I am always ready to throw out a technology that no longer deserves my attention.

… That’s why I know 8-9 languages. And to be totally transparent, I’ve logged many more programming hours with Java than I have with PHP. That said, where goeth* our lovely PHP in 2015?

PHP in 2015

These days I hear the young nerdlings are all enamoured with Python. Yes, Python is a fine language and worthy of praise. But is it better than PHP? And what about the jobs – how much Python work is out there to be had?

Let’s start with the most important number: over 80% of dynamic sites run on PHP! Not Python, not Ruby. Nope, little old ugly PHP runs 80% of web apps in the world! From what I hear, web development firms have lots of PHP work but are finding it increasingly difficult to find PHP programmers.

… With scarcity comes higher prices.

PHP Frameworks are sooo 2015

Like all the mature languages out there, PHP has a nice selection of web frameworks to choose from, and ultimately, you as a budding web developer will have to learn at least one. In 2015 Code Igniter is out (although there are many legacy CodeIgniter apps that will have to be maintained) and Laravel is in.

… Anyway, once you learn one PHP web framework, learning another is not too hard. They are all MVC based and so they all work pretty much the same way. That said, some are better than others.

In a future article I will put my finger to the wind, and get into WHICH PHP framework is probably best in 2015.

Happy new year!

Stefan Mischook
KillerPHP.com

Goeth defined: archaic third person singular present of go.

Which PHP Framework is best?

October 31st, 2014

Hi!

I get asked a lot: which is the best PHP framework? Or, should I choose PHP framework A or should I should PHP framework B?

The short answer: it depends! See below for the deeper answer.

When considering a framework, besides checking out what the uber-nerds are talking about at the time, consider the current cutting-edge thinking about frameworks in general, and be sure your choice of a framework, is up-to-date in that regard.

The no-framework PHP framework

For example, the move these days, is towards the ‘no-framework framework’ style of framework – that’s a tongue-twister! Basically, the more advanced a framework is, the more open it is.

You should be able to drop in components as you need then from any source. So for instance, if you don’t like the ORM layer in a framework you happen to be using, you should be able to easily plugin some other ORM.

At the end of the day, learning one framework or another should not be considered the end of the path – you should expect to have to learn a new framework from time to time … as things mature. The good news is that once you’ve learned your first MVC framework, the rest will come pretty easily since they are all based on the same basic concepts and patterns.

So, choose whichever framework you feel like!

Stefan Mischook
KillerPHP.com

What are PHP Web Frameworks?

October 25th, 2014

Hi,

This is a video (see below) targeted at those who understand basic PHP and are ready to explore the web development world a little further. You see, when you get into PHP, you will also have to learn about the client-side frameworks out there, things like jQuery and Bootstrap.

… PHP afterall, is typically used to create dynamic web pages filled with HTML, HTML5, CSS, CSS3 and JavaScript. So that means you need to learn how to code in those languages as well. Fortunately if you know PHP, it shouldn’t be too hard to wrap your head around them.

What are Web Frameworks?

Think of a framework for a house, scaffolding … or cookie cutters! Web frameworks are just libraries of code (could be code in any language) that speed up the process of doing all kinds of common web design and development tasks.

Anyway, watch my video to learn more:

Thanks!
Stefan Mischook
killerPHP.com

New Video Training Site from Killerphp

September 8th, 2014

Hi Guys!

So, I am just announcing our new video training subscription service we built using Laravel and Twitter Bootstrap … among other things. Check it out:

webmentor.org

What makes Webmentor.org different than what we’ve had in the past? Again, check it out:

  • All the new videos will be in HD.
  • All videos are responsive and resizable.
  • Videos can easily be played back at different speeds.
  • Ask questions and make request – we will do our best to answer!
  • All courses are date stamped.
  • The system shows you which videos you’ve started to watch and which you’ve completed.

This is just the early launch (late stage beta but only a day away from version 1), so we’ve populated the system with our courses that are still good .. though they were created a little while ago. That said, we have brand new courses that cover HTML5 and CSS3 effects. A lot more coming over the next several months. Here is a sample:

Fullscreen background video with CSS3.

Thanks for reading!

Stefan Mischook
killerPHP.com

Teach High School Programming with PHP

August 1st, 2014

k12 web design

Let’s start with the conclusion: PHP is a great language to start teaching middle and high school students programming. My 10yrs + of teaching web design and programming has taught me that.

Why?

PHP is a much more approachable language compared to other popular languages out there.

For example, Ruby is a great and powerful language but you have to grasp some pretty advanced concepts to just get going with it. If you look at PHP, it has an easy to understand layer that can be used as a gentle introduction to programming.

Ok, now to the main article:

Many K12 teachers are now being asked to teach web programming/development for the first time. This presents a challenge since few teachers have professional programming experience.

I was approached about two years ago by a couple of schools who needed a way to more easily teach web programming and web design. Luckily, I had been working on an application that would more than just help: Studioweb is an interactive web design and programming training system that automates the teaching process:

  • automated quizzing
  • automated scoring
  • automated hinting

All based around a proven turnkey curriculum that I’ve been training people with for years.

The Key to Modern Web Design and Development

Web design/development has evolved a lot over the last 20 years, the way webapps are built today is nothing like the way we did it back in the early 1990’s. It is so different in fact, that web programmers/developers from that time, would almost have to completely retrain themselves!

Today, creating web apps is about:

  • HTML 5 … NOT XHTML
  • CSS and CSS3
  • Responsive web design – Bootstrap
  • PHP & MySQL
  • JQuery
  • JavaScript

There are other server-side programming languages that are used a lot today – for example:

  • Java
  • Ruby
  • C# (.Net)

… But far and away, PHP is the most widely used programming language out there. Something like 85% of sites run PHP!

The Recognition of the Importance of Code

One of the biggest changes in the last few years, is the world’s realising that code is now as important as reading, writing and math. When kids learn to code, you give them a practical skill set along with problem solving experience … all the while, you reinforce logical thinking.

Studioweb focuses on teaching real-world web design and programming techniques as well as the key fundamental concepts. Students come away with demonstrable skills that can be applied in the real world on real projects. The aforementioned cognitive benefits come as a bonus.

If you want to learn more or if you are interested in trying out Studioweb, feel free to contact me.

Stefan Mischook
KillerPHP.com

A Gentle Introduction to PHP

June 22nd, 2014

For web designers coming to PHP for the first time, programming can seem pretty complex. The main reason it feels that way, is because many PHP tutorials are not created by teachers … they are created by young programmers who have never taught before.

… Believe it or not, there is a skill and a method to teaching.

Learning PHP made easy

My beginners course on PHP has a proven track record of being ultra-simple – anyone can learn PHP with Beginners PHP. Not the most exciting name for a course but nonetheless, I can guarantee you will learn PHP after doing it.

If you have any questions, feel free to write me.

Stefan Mischook
killerPHP.com

My new site swiftplayground.org

June 18th, 2014

swift

Hi,

It took us a week but my site on Apple’s Swift programming language has officially launched!

swiftplayground.org

I decided that (once again) I had to walk my talk and explore a new programming language. Swift is a good one to learn for several reasons:

  1. Swift is an ultra modern language. It’s always good to be clued into the cutting edge.
  2. Swift will open up the doors to speedy iOS programming. There’s good money in them Apples!
  3. It looks like a lot of fun!

So there you have it PHP nerds. If you are looking to stimulate your programmatic brain or maybe expand the type of (programming) work you can do, Swift is something worth learning.

Stefan Mischook
killerPHP.com

Upgrading to Apache 2.4.9, Laravel and Dumping CodeIgniter

June 10th, 2014

Hi,

We just upgraded our servers to Apache 2.4.9 (and PHP 5.4.29) so that we could use the Laravel PHP framework.

The upgrade was pretty flawless, save two minor issues: one with a WordPress plugin and the other was with a PHP.ini setting that was no longer supported in Apache 2.4.9.

… This caused CodeIgniter to show a 500 internal sever error. CodeIgniter error handling stinks. That alone is reason enough to dump CodeIgniter.

Apache 2.4.9 is fast!

As an added bonus, we were pleasantly surprised to find that Apache 2.4.9 is significantly faster than what we had been running – Apache 2.2.27.

It’s best to keep your server software up-to-date to take advantage of performance improvements and security fixes. If you let your software get too out of date, the eventual upgrade could be a nightmare as radical changes to software, is more likely to break things than minor upgrades.

Stefan Mischook
killerPHP.com

Apple’s new programming language Swift just Killed Objective C

June 3rd, 2014

swift

Hi,

I just watched the presentation on Apple’s new programming language: Swift. This means the end for Objective C and it fundamentally changes the world of iOS programming.

Why?

It is much easier to learn and much easier to work with and so we will see it used by a lot more programmers.

About the Swift Language itself:

It looks like a modern scripting language that shares similarities to Python and other modern nimble languages. I just took a quick look at some Swift code and it is indeed much easier to learn than Objective C.

Take a look at this:

let label = "The width is "
let width = 94

For the constant (created with the keyword ‘let’) you don’t necessarily need to declare the type of data that your constant is holding (if you will) Swift is smart enough (many times) to detect the data type automatically. For example:
let width = 94

… It seems pretty clear the ’94’ above is an int and not a string.

When there are situations where the initial value of your constant does not provide enough information with regards to its’ type, then you can specify it’s value like so:

let explicitDouble: Double = 70

Casting Types with Swift:

Since it seems Swift is NOT loosely typed like PHP and JavaScript, you need to explicitly convert data types. So for example:

let label = "The width is "
let width = 94
let widthLabel = label + String(width)

In the above code, I had to convert my ‘width’ constant from an integer (I’m sure Swift set ‘width’ to int when we declared the constant) .. to a string using: String(width)

Anyway, I just started looking at this language 20 minutes ago and I have a lot to learn! But, from what I’ve seen so far, and from what I’ve seen with the new Xcode tools and Swift Playground (which gives you live feedback of your code) I think this could be a great language to learn and teach with.

More to come I think.

Stefan Mischook
killerPHP.com

How to Become a Web Developer – the Video!!

May 7th, 2014

Hi,

Based on my previous blog post, in this video I talk about what you need to do to become a web developer:

Thanks!

Stefan Mischook
killerPHP.com

How to Become a Web Developer

April 30th, 2014

light bulb

 

The following details the steps you need to take to become a web developer – this is a question I get all the time by the way … you are not alone!

#1. Learn to code. You need the skills before you can sell them! Today (2014-2015) you need to learn the following technologies in this order:

  • HTML
  • CSS
  • JavaScript
  • HTML5 & CSS3
  • JQuery
  • Twitter Bootstrap
  • PHP
  • SQL & MySQL
  • Object Oriented PHP (OOP in PHP)

To be clear, you don’t need to master all these before you get to step #2, #3 and so on … But you do need to see these as the ultimate goal.

… In fact, you could quickly move into step #2 once you have a good understanding of CSS and HTML under your belt. As you learn more though, you will be able to take on more jobs (simply because of the greater variety of skills you will have) and raise your pay/salary as you become more valuable and more experienced.

If you want to read the rest, download the pdf.

I hope you find this useful.

Stefan
killervideostore.com
Phone: 1-855-932-8091

Top 10 Web Programming Teaching Tips!

April 24th, 2014

studioweb logo

Hi!

This blog post is for teachers teaching web programming and design … but if you are learning PHP (or any other language) many of these tips will be helpful to you too.

Let’s start with a teaser:

1. Start with an Easy Language:


Don’t use hard to understand languages like Java, C#, C++ to teach beginners programming! Stick to simpler languages like PHP, Ruby, Python or JavaScript. Once your students have a grasp of basic programming concepts, then you can move into the more complex languages … if you need to!

2. Don’t teach A to Z:

Teaching people to code has a lot more to do about leaving out the non essentially elements of a language. Don’t cover every nuanced aspect of the HTML link tag, don’t cover all the ways a method can be created in PHP … leave out the less often used aspects of a language and save it for later. Just expose your students to the key aspects of the language, just enough so they can move forward.

If you want the other 8 tips, follow this link.

Thanks,

Stefan Mischook
killerPHP.com

The #1 Rule of Programming

April 22nd, 2014

stefans-php-rules

Hi!

There is a lot to learn when it comes to PHP programming … actually, there is a lot to learn when it comes to programming, regardless of the language. Here are my top for programming tips.

Stefan’s #1 Rule of Programming:

You will not remember everything you learn.

All the methods, functions, design patterns and other constructs found in PHP are far too many to for any human to remember. That’s why god invented Google and php.net.

… A good book can help too!

The most important thing to remember when learning PHP, are the basic concepts and practices. So I am talking about things like, function, arrays, classes, recursion, MVC et cetera. Again, it is not important that you remember the specific syntax – that you will forget in time. No, it is only important you understand what these things are and WHY you would use them.

Read the rest of this entry »

How important is the choice of programming language – in app creation?

April 14th, 2014

Hi,

I am a big advocate of PHP but you have to ask yourself, how important is the choice of programming language, given so many great apps are created with many different languages? Think about it:

  • Twitter – created with Ruby
  • Facebook – created with PHP
  • LinkedIn – created with Java

I get deeper into this topic in this video blog:

Thanks,

Stefan Mischook
killerPHP.com

Should you use JQuery less and do more raw Javascript?

April 13th, 2014

Yo!

Not strictly PHP … actually, this is not PHP at all! But it is still relevant to any active PHP coders because you will need to use JavaScript with PHP – that is almost a certainty.

Someone put this question to me recently:

What’s your opinion on using pure JavaScript over that of Jquery and other libraries, do you think having a strong understanding of pure JavaScript is vital when using Jquery and other libraries?

My Personal opinion is that you should use pure JavaScript regularly because more likely then not you are going to be doing either edits to Jquery or making custom Jquery plugins. I ask this because i feel we are becoming dependent on Jquery and missing the point that it is just JavaScript at its core. 

My answer:

That’s a great question! My instinct is to say we need to know mechanics of things and so it makes sense to not rely too heavily on JQuery. But the reality is different!

You see, just about every language and framework we use today, builds upon some lower level base that most of us are not even aware of. So for instance, Ruby and PHP are written in C, so shouldn’t we go down to C and learn that? No!

Back to JavaScript; you need to know basic JavaScript and how to manipulate the DOM without JQuery. But in day-to-day coding work, you SHOULD use JQuery and other libraries because they’ve been debugged and handle a bunch of boilerplate tasks … things that you should not have to deal with.

If by chance you see a need to create a JQuery plugin or you need to do some highly custom JavaScript … then go deeper into then. For now though, you have too many things on your plate to worry it!

Stef

I am not sure if I should be quoting myself?

;)

Stefan Mischook
killerPHP.com

Created By Stefan Mischook  |  Top of page  go to top of page