Here's the deal. I started working for this small company about two months or so ago. I've been a programmer before but never for web page type stuff. So, this company hired me to learn PHP and mySQL so that I could do enhancements, fixes and what not to a series of web pages that are client specific. Little did I know what I was getting myself into.
When I first started I learned that the existing web pages were put together quickly by people that also at the time did not know PHP and mySQL so they learned what they needed to in order to get the website up and running and since then only learned what they needed to for any additions and fixes that came up. When I heard this I got worried because in my experience with other languages when this happens the code is barely readable and a pain in the ass to maintain. As I feared this was no exception.
Anyway, I bought a book about PHP4 and PHP5 and mySQL5 and proceeded to learn. I was then given a task to add a couple pages. A simple form with a user validation page that would then send the info via email to a certain person here at work. I set it up and tested it on my own local pc and once it worked I had them move it to our web server for testing. It immediately broke. It was then that I found out that they are running something like PHP3 and I don't know what old version of mySQL. So now I have to unlearn some of the things I've learned that are PHP4 and 5 specific and figure out how to do it in version 3.
So after that long rant here's my questions. First, is there any reason not to switch to a newer version of PHP and mySQL other than the fact that some of the web pages will have to be fixed? I mean security issues and what not are actually better in the newer versions correct? They could be using session management and I told them about that but they have this idea that session management in the newer versions isn't very secure and that anyone can simply break into their system then.
Also, they currently write every single page using printf statements that print out html tables and nested tables. This makes for extremely unreadable code and hard to maintain code. The couple of pages I wrote basically keep everything in html except what needs to be output using php. As I'm still learning CSS I haven't tried to change it to not use html tables so that's a pain but since I can indent and otherwise format my code it's at least easier to read yet they say that it's better if I use printf statements like them.
If I can't change their minds on some of these things I guess I'll just deal until I learn php and mysql better and then can get a different job. What sucks is I really like the company and the people here and I'm extremely grateful that they've given me this opportunity to learn this stuff on-the-job because no place else I've ever been as a programmer would let me learn a new language just starting out.
When I first started I learned that the existing web pages were put together quickly by people that also at the time did not know PHP and mySQL so they learned what they needed to in order to get the website up and running and since then only learned what they needed to for any additions and fixes that came up. When I heard this I got worried because in my experience with other languages when this happens the code is barely readable and a pain in the ass to maintain. As I feared this was no exception.
Anyway, I bought a book about PHP4 and PHP5 and mySQL5 and proceeded to learn. I was then given a task to add a couple pages. A simple form with a user validation page that would then send the info via email to a certain person here at work. I set it up and tested it on my own local pc and once it worked I had them move it to our web server for testing. It immediately broke. It was then that I found out that they are running something like PHP3 and I don't know what old version of mySQL. So now I have to unlearn some of the things I've learned that are PHP4 and 5 specific and figure out how to do it in version 3.
So after that long rant here's my questions. First, is there any reason not to switch to a newer version of PHP and mySQL other than the fact that some of the web pages will have to be fixed? I mean security issues and what not are actually better in the newer versions correct? They could be using session management and I told them about that but they have this idea that session management in the newer versions isn't very secure and that anyone can simply break into their system then.
Also, they currently write every single page using printf statements that print out html tables and nested tables. This makes for extremely unreadable code and hard to maintain code. The couple of pages I wrote basically keep everything in html except what needs to be output using php. As I'm still learning CSS I haven't tried to change it to not use html tables so that's a pain but since I can indent and otherwise format my code it's at least easier to read yet they say that it's better if I use printf statements like them.
If I can't change their minds on some of these things I guess I'll just deal until I learn php and mysql better and then can get a different job. What sucks is I really like the company and the people here and I'm extremely grateful that they've given me this opportunity to learn this stuff on-the-job because no place else I've ever been as a programmer would let me learn a new language just starting out.