i work for a web development company and during the one year i have spent here, there were no improvements in the technologies we used to built our websites. I introduced jquery to them (buying the Novice to Ninja by Sitepoint) and now, i want to get rid of all these crappy PHP from scratch and use a PHP framework instead.

So what reasoning i can use to convince my boss to switch, and how to convice the other developers too?

6 Answers
6

Find another Job

The real problem here is culture. If you had to introduce the other developers to jQuery they don't know web development 101 and probably just don't give a damn about best practices. Maybe they just turn up work 8 hours and collect their pay, devoid of any passion for programming. When you try to get these people to learn anything they'll put up a lot of resistance rather than see the new tool as something interesting and time saving. I am looking for a new job because I think it's just easier to work along side like minded people. Maybe your feathers are too bright for the cage.

I'm in a similar situation right now. Funnily enough I want to switch off Codeigniter onto a better framework like Django, Rails or Symfony (better models, command-line and forms). Before I was hired some bad work was done in cowboy PHP, and the team is still frustrated maintaining those legacy projects. You can't escape it. It's hard enough to get a procedures manual or get everyone using a git repository for each project. But these two are slowly getting done. It could be another 5 years before I will be working 100% on Django/Rails the way things are going.

In my short career I've worked in one place which actually had a tone of documentation on how things are done, how to create a new project in a repo, how to copy it onto the production server and so on. Everyone followed the company way of doing things because the boss was a developer and made sure things were done properly.

In the mean time school up on some other languages or frameworks, it will make you more employable even if your knowledge never makes it into your current workplace.
I'm building a website with a co-worker in Django which I will later show my boss and put in my portfolio for head hunters to see.

Sneak it in the back door

The other option, which may just piss off your co-workers is to sneak your tool of choice in the back door by just ignoring them and using it anyway. If you get assigned a small project in which your the only developer that would be a good candidate.

dude, you rock, you actually read my mind here. Hope they will be positive about it when i will present it to them on Monday. Else i will just use the frameworks for Freelance jobs
–
mahen23Jan 6 '11 at 18:03

@mahen23 Hope they will be positive about it when i will present it to them on Monday. - Just remember to explain that it saves money. I read between the lines a bit with your workplace, only you will know if you workplace has these problems. The actual answer to the question you asked is not my own. If you simply want to use the framework at work then you need to convince the boss that it increases profit and you know how to use it.
–
KeyoJan 6 '11 at 21:31

It saves money

So what reasoning i can use to convince my boss to switch, and how to convice the other developers too?

Using a framework is like prefabricating pieces of a site. As long as you can work within that prefabrication it will speed development, reduce bugs and errors, and influence consistency between applications. All this boils down to it saves money.

Do you mean building something as a side project or a new company project? The latter would still require a successful example.
–
chiuroxJan 6 '11 at 13:00

@jiceo: "a new company project... would still require a successful example" Not always. Sometimes there are small projects that can be done "under the radar" as we say. Other times, smart managers realize that "innovation" means "experiment" and will allow using a framework without elaborate justification or reasoning.
–
S.LottJan 6 '11 at 13:02

Whilst I totally agree with the other answers on here (and having tried most of them during my career) can I play devils advocate here for a sec?

Is it just a case of what the boss has now solves his business problems?

Is the company making money churning out what it always has done?

The boss is focused on the business aspect whilst the techies are focused on the technical stuff and it's often hard to provide a justifiable business case for introducing new technologies. Switching to a new technology just because it is new is rarely a solid reason.

I recently had to do this. I was able to win the other developers over by saying that even if we didn't use a pre-built framework, we could build our own so we knew it inside and out. We could also create a central repository (SVN) for our framework and each web project would be easier to maintain by separating the core framework code from project specific code. The framework could be housed in a directory in the include_path to make all of the sites using the framework update at once or you could overwrite files as needed.

Sorry, but this sounds like a bad choice. Owning code is like owning a baby, you are responsible for feeding it and cleaning up it's mess. Sounds like a case of not invented here.en.wikipedia.org/wiki/Not_Invented_Here
–
KeyoJan 6 '11 at 14:11