Lo recomendable antes de comenzar a aprender un lenguaje de programación es tener bases sólidas de algún otro sistema. Pero en el aso de muchos que tienen un respaldo solo de negocios, sin tiempo, o conocimiento y que nunca han programado nada en su vida, y como en muchos casos, ha que partir del suelo.
Antes que nada, lea completo este post incluyendo el apéndice que le sigue. Debe asegurarse que se siente cómodo con el mapa de ruta que tomará antes de comenzar el viaje.
Aprender PHP por su propia cuenta es muy difícil, pero definitivamente se puede. Debo decir que toma un mes o dos considerando algunos días, en los que no podrá sostener las lecciones o llevarles el paso. También existen tutoriales que querrá llevar antes de dar los pasos definitivos en esta materia. Sea realista también. Si labora en otra área y tiene otro tipo de trabajo, y aprende en su tiempo libre, le llevará más tiempo aún.
En lo personal me llevó prácticamente un año llegar a un punto, en que me encuentro actualmente. Lleve hora de video y tutoriales que era inútiles para mí, porque nunca encontré una guía real de cómo construir un sitio web desde cero.
Bien, aqui puede comenzar usted.
Paso 1 – de 2 a 4 días
Aprenda el código HTML y CSS en http://codecademy.com. Estos son los primeros pasos para un principiante y le permite ver resultados inmediatos sobre lo que está aprendiendo. Es totalmente opuesto a aprender por ejemplo:
<?php return 2 + 2; ?>
lo cual encuentro tonto, ya que esto se sabe sin siquiera usar calculadora.
Paso 2 – 1/2 día
Entre a Video Tutoriales Gratuitos en Programación de Computadora, Adobe Software y Más! and watch the first 12 videos in the List of Videos for PHP. By now, you have the basic tools to start building a semi-dynamic website! Next up, you need to learn more basic function in PHP.
At this point, it is also good to get a code editor. For these initial steps, I would recommend getting Bare Bones Software | TextWrangler (TextWrangler), because it is very simple to use, and won’t overcomplicate or confuse a first time programmer. Although, you’ll notice it’s very different from the Codecademy environment.
Step 3 – 2-4 days
Step 3 should be easy for most people who have worked with other programming languages, but can be slightly more complicated than these initial steps. Go back to Codecademy and complete the PHP tutorial. Don’t be discouraged if by this step if you find it to be complicated! In the next step, we’ll be getting into much cooler stuff/more dynamic pages in the next step!
Step 4 – 6-9 days
Go back to the PHP tutorials on the TheNewBoston and do tutorials 42-43, 61-76, 96-103, 108-126, 136-139. By the end of these tutorials, you’re basically a web developer! You should be proud of yourself if you’ve made this far. Many people will have given up halfway through this guide to learning PHP. Just remember, it is always about ambition. Everyone is smart enough to become a web developer, it’s simply about having passion.
At this step, you might want to consider a more advanced code editor like Page on Netbeans (Netbeans). It’s more advanced than TextWrangler, butTextWrangler is better for teaching you how important semi-colons, and commas are.
Step 5 – 1 day
Now it’s time to learn a little AJAX. Don’t worry about knowing what this means yet. Basic idea, it allows you to update pages without refreshing the page. It’s what allows you to post a comment on a website, and then see that comment a split second later without reloading the page. Now, it’s time to do tutorials 171-184 of the PHP tutorials on TheNewBoston.
Step 6 – 1 day
Time to learn how to make some clean code with Object Oriented Programming. This will allow you to “modularize” your code. Essentially, it allows you to break up your code into different pieces, which makes it easy to reuse code and to figure out which piece of the code is broken. Do tutorials 189-200 on TheNewBoston PHP tutorial page. This should be a good reminder of what you learned in the PHP tutorials from Codecademy. If you liked Codecademy’s tutorials better, you should take this time to go back and review those as well.
Step 7 – 2-3 days
Create a CMS with PHP. Then once you’ve finished, go back, and rewrite it in OOP language. If you’re struggling with this, just move on and come back to it. It’s better that you keep going, then struggle at some obstacle and quit.
Step 8 – 7-9 days
Do the new tutorial on creating a Login and Signup from PHPAcademy at Register & Login (New). This is from the PHPAcademy playlist phpacademy on YouTube. The tutorial is 7 hours of video, but you will create an awesome login system. This is more for your fundamental understanding of how to put together some PHP from scratch. You could skip this step if you want to (not that I recommened it). Step 10, you will learn how to work with MVC architecture, which will probably knock your socks off. You will most likely want to learn an MVC before you create your own website.
Step 9 – 2-3 days
Make your website fun and interactive using JQuery. This is a very important and easy library you can use to enhance your website’s interactivity. For this, go back to Codecademy, and complete their JQuery tutorials. JQuery is a library for JavaScript. I did not include tutorials for Javascript, because it is relatively similar to PHP, and you won’t be using Javascript a whole lot to begin with.
Step 10 – 3-5 days
Learn how to work with an MVC architecture! I would start with these tutorials to learning CodeIgniter first (one of many frameworks). CodeIgniter is a great beginner framework, so while I recommend starting with these tutorials, I suggest you use a slightly more advanced framework like Laravel 4.0. I haven’t actually used laravel, and I don’t know of any great resources for laravel, but I’m sure you will find some. I will come back and edit this, once I start learning some laravel and find good resources.
http://www.youtube.com/watch?v=9…
Introduction to CodeIgniter – Basic Website
PHP CodeIgniter Registration & Login
PHP CodeIgniter Facebook Connect Login
Step 11 – 1-2 days
Build something! (… but not in that vague sort of, yeah, just read the php manual and figure it out sort of way.) Go to Website wireframes: Mockingbird and create a wireframe of the kind of website you want to build. You should include a Home Page, About Page, and maybe a forum of some sort. Once this is done, it’s time to get cracking on making it real.
Step 12 – ???
Build your website. This could take a long time or a little time depending on complex you want to make it. Of course, there’s always room for continuous improvement. Don’t think that you need to build the whole thing correctly from the get-go. Just think about how many iterations facebook has been through. As well, Khan Academy looked awful. This is how Khan Academy started outhttp://web.archive.org/web/20090… or Google Google! or Codecademy. Heck, you don’t even need to use the way back machine to look at how awful reddit is.
Remember to try to use OOP programming as often as possible. For this, you may want to create an MVC. More on that in the appendix.
Step 13 – 2-3 days
Now that your website is complete, it’s time to get it on the internets! For this, I would recommend Set up a Cloud Server. I haven’t actually set up a could server myself before, but PHPAcademy always has good tutorials, so I’m sure this will help. There could be other better tutorials out there though.
Step 14 – Forever
Never stop learning. Always go back and rewatch more tutorials. You’ll pick up new tricks or you’ll be reminded of things you have forgotten.
Appendix:
There are a ton of other great tutorials out there, and I’m sure you have seen some of them along the way, while browsing through the other websites I mentioned.
– Get an interactive development environment (IDE) – this is essentially a text editor that is helpful for writing code. it colors the code and makes it easy to read
– Figure out MVC/Use a Framwork – this isn’t something that I have done a lot of work with, but it is by far one of the most powerful concepts in web development. I would venture to say that almost all websites use some kind of Model-View-Controller framework. There are a few tutorials on this from PHP Academy. I would check those out, but also look in other places
– Along with the MVC, learn to use a Create-Read-Update-Destroy (CRUD) system. It is essentially a module (from the OOP tutorials you go over, you’ll start to understand this) does all of your interactions with the database. For this, I would check out Real-World OOP With PHP and MySQL
– Attend hackathons and meetups near you. I would recommend making friends with some other programmers that can help mentor you as you continue your progress.Sign up for an account on Find Meetup groups near you to view all of the meetups happening near you
– There will be plenty of tutorials on web development that you will run across. If you spend 20 mins watching a tutorial, and the instructor isn’t helping you, move on. There are so many resources out there, it doesn’t make sense to stick with one that isn’t helping you.