I went to Codeworks Austin on Saturday, and it was kind of eye-opening. Lots of good info about how to better approach PHP development. Here’s what I learned:
- First and foremost, even after developing for over 10 years, I have a LOT to learn. In fact, there’s an alarming amount of stuff I DON’T know.My biggest issue, is that I originally learned PHP4 10 years ago, and it was very procedural. You wrote code from top to bottom, and it ran from top to bottom. After I started getting into it, I got my first programming job doing mostly Flash, ActionScript 2, and classic ASP using VBscript. I basically set aside learning PHP, since there wasn’t really a need in my day-to-day life. I picked it back up a couple of years ago, mostly for personal sites, but PHP5 had many new features, and I never had need to learn them all.
- I really need to master OOP. Again, my previous programming experience was ActionScript 2, classic ASP, and PHP4… which are all mostly procedural or functional. I’ve jumped ahead quite a bit in my OOP experience with getting into some of PHP Frameworks like CodeIgniter and CakePHP… but I need to get more comfortable writing my own classes outside of the frameworks.
- Speaking of frameworks, I might need to check out Zend. It seems a lot of people there were using Zend Framework, and the speakers seemed pretty happy with it. Also, I think I was the ONLY person there that isn’t using PEAR. So I should probably get on that as well. Though, working on a Windows machine, it doesn’t look all that straight forward.
- Speaking of Windows not being easy… it seems most people there were on Macs, and many seemed to be Terminal/Command Prompt ninjas. Since current Macs have Unix at their base, there is a lot of built in functionality that makes setting up a PHP dev environment a lot easier. However, I think I may go the Linux route, because… why not just go as hardcore as possible?
- Subversion/ Version Control. I’ve submitted one bit of code to Github, and that’s the ONLY time I’ve ever checked anything in or out, ever. In a multiple dev environment having version control is a necessity, but since I’ve been a “lone ranger” for all of programming career, I’ve never bothered to learn or implement it. Moving forward, with both my personal advancement and expanding my current job, I really need to get this up and running.
While the actual talks themselves were okay, they were mostly “overview” type stuff. Very little detail. But just seeing how other devs worked was the most education thing I took away. Lastly, I really want to get more involved with other events like that… and take my coding to the next level.