PHWinfo banniere

Titres
PORTAIL ANNUAIRE ARTICLES COMPARATEUR HÉBERGEURS DEVIS FORUMS RÉDUCTEUR D'URL
Précédent   PHWinfo > Autres forums > Forum Programmation & Conception > php.general > Improving development process / with developer setup
S'inscrire FAQ Membres Recherche Messages du jour Marquer les forums comme lus
Improving development process / with developer setup

Réponse
 
LinkBack Outils de la discussion
Vieux 10/05/2008, 15h10   #1
robert mena
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Improving development process / with developer setup

Hi,
I am looking for tips regarding improving the development process. I'll
explain my current setup and please feel free to comment.

My developers all use windows + eclipse PDT, the workspace is hosted (via
samba) in a Linux server with Apache/PHP/MySQL. I am in the process of
adopting Unit testing (PHPUnit2) and debug (Xdebug) so I have concerns about
how to property use this.

For example, in my current setup I'd have to enable SSH so they could run
the tests from the command line in the development server, but I am not sure
if I could remotely use Xdebug.

Thanks.

  Réponse avec citation
Vieux 10/05/2008, 17h44   #2
David Otton
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [PHP] Improving development process / with developer setup

2008/5/10 robert mena <robert.mena@gmail.com>:

> I am looking for tips regarding improving the development process. I'll
> explain my current setup and please feel free to comment.
>
> My developers all use windows + eclipse PDT, the workspace is hosted (via
> samba) in a Linux server with Apache/PHP/MySQL. I am in the process of
> adopting Unit testing (PHPUnit2) and debug (Xdebug) so I have concerns about
> how to property use this.
>
> For example, in my current setup I'd have to enable SSH so they could run
> the tests from the command line in the development server, but I am not sure
> if I could remotely use Xdebug.


Your description (specifically, Samba) suggests that you're not using
source control. If you want to go for TDD (I don't know that you do,
but IMO it's a good direction to move in) I would suggest a
three-server setup - dev, staging and live.

The dev server(s) are where you work. One per developer. Once you're
happy with your code and your tests, you commit your changes to source
control. This is where it gets clever. You can use pre- and
post-commit hooks to run an automated build process that pushes the
changes to a staging server, automatically runs the unit tests, and
accepts/rejects the commits based on the test results. You can even
lint the code, and reject anything that isn't in the house style.

With larger projects, where an entire publish-and-test on each commit
becomes impractical, you can just run the build process and unit tests
every n hours, and mail out the results.

Publishing to the live server is simply a matter of running the build
scripts with a different destination.

On top of all that, run an issue tracker. /Everything/ goes in the
issue tracker, bugs, features, whatever. When you make a commit, that
commit should be closing an issue in the issue tracker (via commit
hooks again). That way you can track each change that's been made back
to its reason.

All of this is opinion, of course, there's no Right Way. Just take
what's useful to you.
  Réponse avec citation
Vieux 11/05/2008, 01h44   #3
Gabriel Sosa
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [PHP] Improving development process / with developer setup

I suggest you if you are running live on linux, then developing on
linux, could be the same dist or not..
but definitely don't mix OS, because the extensions could fail, etc.
one big issue it's the case insensitive in windows.

definitely some version control system such as SVN or GIT

you can use Hudson for continuous integration

and selenium for automatics QA test over browsers

again, try to don't mix OS.

saludos

gabriel

On Sat, May 10, 2008 at 1:44 PM, David Otton <david@otton.org> wrote:
> 2008/5/10 robert mena <robert.mena@gmail.com>:
>
>> I am looking for tips regarding improving the development process. I'll
>> explain my current setup and please feel free to comment.
>>
>> My developers all use windows + eclipse PDT, the workspace is hosted (via
>> samba) in a Linux server with Apache/PHP/MySQL. I am in the process of
>> adopting Unit testing (PHPUnit2) and debug (Xdebug) so I have concerns about
>> how to property use this.
>>
>> For example, in my current setup I'd have to enable SSH so they could run
>> the tests from the command line in the development server, but I am not sure
>> if I could remotely use Xdebug.

>
> Your description (specifically, Samba) suggests that you're not using
> source control. If you want to go for TDD (I don't know that you do,
> but IMO it's a good direction to move in) I would suggest a
> three-server setup - dev, staging and live.
>
> The dev server(s) are where you work. One per developer. Once you're
> happy with your code and your tests, you commit your changes to source
> control. This is where it gets clever. You can use pre- and
> post-commit hooks to run an automated build process that pushes the
> changes to a staging server, automatically runs the unit tests, and
> accepts/rejects the commits based on the test results. You can even
> lint the code, and reject anything that isn't in the house style.
>
> With larger projects, where an entire publish-and-test on each commit
> becomes impractical, you can just run the build process and unit tests
> every n hours, and mail out the results.
>
> Publishing to the live server is simply a matter of running the build
> scripts with a different destination.
>
> On top of all that, run an issue tracker. /Everything/ goes in the
> issue tracker, bugs, features, whatever. When you make a commit, that
> commit should be closing an issue in the issue tracker (via commit
> hooks again). That way you can track each change that's been made back
> to its reason.
>
> All of this is opinion, of course, there's no Right Way. Just take
> what's useful to you.
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>




--
Los sabios buscan la sabiduría; los necios creen haberla encontrado.
Gabriel Sosa
  Réponse avec citation
Vieux 19/05/2008, 13h20   #4
robert mena
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [PHP] Improving development process / with developer setup

Hi,
Thanks for all answers. Please let me add that I do use CVS (migrating to
SVN) and the reason to use samba is that doing this allows the developer
machine (windows) to access the shares hosted in a linux server so when
he/she tests it will be run in the 'same' environment that the staging and
production servers and because in order to assure browser compatibility they
have to test from firefox/IE.

So, in order to allow phpunit to be ran, have the firefox/IE support and use
xdebug I have two basic options:
a) stay with windows, install XAMPP (or any other all-in-one). And live
with the fact that some things will have to be taken care of (such as
PATH differences between unix/windows)
b) switch to linux with the development stack, enable a windows server to be
connected from rdesktop so they can test the IE

In both cases I'll have extra work in order to maintain the developer's
machine somewhat synchronized with the production server.

Am I missing a third/fourth (better) etc option?

thanks.

On Sat, May 10, 2008 at 8:44 PM, Gabriel Sosa <sosagabriel@gmail.com> wrote:

> I suggest you if you are running live on linux, then developing on
> linux, could be the same dist or not..
> but definitely don't mix OS, because the extensions could fail, etc.
> one big issue it's the case insensitive in windows.
>
> definitely some version control system such as SVN or GIT
>
> you can use Hudson for continuous integration
>
> and selenium for automatics QA test over browsers
>
> again, try to don't mix OS.
>
> saludos
>
> gabriel
>
> On Sat, May 10, 2008 at 1:44 PM, David Otton <david@otton.org> wrote:
> > 2008/5/10 robert mena <robert.mena@gmail.com>:
> >
> >> I am looking for tips regarding improving the development process. I'll
> >> explain my current setup and please feel free to comment.
> >>
> >> My developers all use windows + eclipse PDT, the workspace is hosted

> (via
> >> samba) in a Linux server with Apache/PHP/MySQL. I am in the process of
> >> adopting Unit testing (PHPUnit2) and debug (Xdebug) so I have concerns

> about
> >> how to property use this.
> >>
> >> For example, in my current setup I'd have to enable SSH so they could

> run
> >> the tests from the command line in the development server, but I am not

> sure
> >> if I could remotely use Xdebug.

> >
> > Your description (specifically, Samba) suggests that you're not using
> > source control. If you want to go for TDD (I don't know that you do,
> > but IMO it's a good direction to move in) I would suggest a
> > three-server setup - dev, staging and live.
> >
> > The dev server(s) are where you work. One per developer. Once you're
> > happy with your code and your tests, you commit your changes to source
> > control. This is where it gets clever. You can use pre- and
> > post-commit hooks to run an automated build process that pushes the
> > changes to a staging server, automatically runs the unit tests, and
> > accepts/rejects the commits based on the test results. You can even
> > lint the code, and reject anything that isn't in the house style.
> >
> > With larger projects, where an entire publish-and-test on each commit
> > becomes impractical, you can just run the build process and unit tests
> > every n hours, and mail out the results.
> >
> > Publishing to the live server is simply a matter of running the build
> > scripts with a different destination.
> >
> > On top of all that, run an issue tracker. /Everything/ goes in the
> > issue tracker, bugs, features, whatever. When you make a commit, that
> > commit should be closing an issue in the issue tracker (via commit
> > hooks again). That way you can track each change that's been made back
> > to its reason.
> >
> > All of this is opinion, of course, there's no Right Way. Just take
> > what's useful to you.
> >
> > --
> > PHP General Mailing List (http://www.php.net/)
> > To unsubscribe, visit: http://www.php.net/unsub.php
> >
> >

>
>
>
> --
> Los sabios buscan la sabiduría; los necios creen haberla encontrado.
> Gabriel Sosa
>


  Réponse avec citation
Vieux 19/05/2008, 13h32   #5
Richard Heyes
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [PHP] Improving development process / with developer setup

> Thanks for all answers. Please let me add that I do use CVS (migrating to
> SVN) and the reason to use samba is that doing this allows the developer
> machine (windows) to access the shares hosted in a linux server so when
> he/she tests it will be run in the 'same' environment that the staging and
> production servers and because in order to assure browser compatibility they
> have to test from firefox/IE.


If you only have a small number of developers, you could do away with
Samba completely and use SftpDrive, which allows you to map a drive to
an SFTP account (essentially the same as an SSH account).

http://www.phpguru.org/sftpdrive

--
Richard Heyes

+----------------------------------------+
| Access SSH with a Windows mapped drive |
| http://www.phpguru.org/sftpdrive |
+----------------------------------------+
  Réponse avec citation
Vieux 19/05/2008, 13h39   #6
Jason Pruim
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [PHP] Improving development process / with developer setup


On May 19, 2008, at 8:45 AM, Zoltán Németh wrote:

>> Hi,
>> Thanks for all answers. Please let me add that I do use CVS
>> (migrating
>> to
>> SVN) and the reason to use samba is that doing this allows the
>> developer
>> machine (windows) to access the shares hosted in a linux server so
>> when
>> he/she tests it will be run in the 'same' environment that the
>> staging and
>> production servers and because in order to assure browser
>> compatibility
>> they
>> have to test from firefox/IE.
>>
>> So, in order to allow phpunit to be ran, have the firefox/IE
>> support and
>> use
>> xdebug I have two basic options:
>> a) stay with windows, install XAMPP (or any other all-in-one). And
>> live
>> with the fact that some things will have to be taken care of (such as
>> PATH differences between unix/windows)
>> b) switch to linux with the development stack, enable a windows
>> server to
>> be
>> connected from rdesktop so they can test the IE
>>
>> In both cases I'll have extra work in order to maintain the
>> developer's
>> machine somewhat synchronized with the production server.
>>
>> Am I missing a third/fourth (better) etc option?

>
> why not switch everything to linux and run IE in wine or vmware on the
> developer's machine? that way you don't have to maintain windows
> machines
> at all


Or depending on your budget, Switch the developers to Macintosh
computers, install windows via parallels, and then you can test in Mac/
Unix/Windows all from 1 computer

--

Jason Pruim
Raoset Inc.
Technology Manager
MQC Specialist
3251 132nd ave
Holland, MI, 49424-9337
www.raoset.com
japruim@raoset.com



  Réponse avec citation
Vieux 19/05/2008, 13h45   #7
Zoltán Németh
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [PHP] Improving development process / with developer setup

> Hi,
> Thanks for all answers. Please let me add that I do use CVS (migrating
> to
> SVN) and the reason to use samba is that doing this allows the developer
> machine (windows) to access the shares hosted in a linux server so when
> he/she tests it will be run in the 'same' environment that the staging and
> production servers and because in order to assure browser compatibility
> they
> have to test from firefox/IE.
>
> So, in order to allow phpunit to be ran, have the firefox/IE support and
> use
> xdebug I have two basic options:
> a) stay with windows, install XAMPP (or any other all-in-one). And live
> with the fact that some things will have to be taken care of (such as
> PATH differences between unix/windows)
> b) switch to linux with the development stack, enable a windows server to
> be
> connected from rdesktop so they can test the IE
>
> In both cases I'll have extra work in order to maintain the developer's
> machine somewhat synchronized with the production server.
>
> Am I missing a third/fourth (better) etc option?


why not switch everything to linux and run IE in wine or vmware on the
developer's machine? that way you don't have to maintain windows machines
at all

greets,
Zoltán Németh

>
> thanks.
>
> On Sat, May 10, 2008 at 8:44 PM, Gabriel Sosa <sosagabriel@gmail.com>
> wrote:
>
>> I suggest you if you are running live on linux, then developing on
>> linux, could be the same dist or not..
>> but definitely don't mix OS, because the extensions could fail, etc.
>> one big issue it's the case insensitive in windows.
>>
>> definitely some version control system such as SVN or GIT
>>
>> you can use Hudson for continuous integration
>>
>> and selenium for automatics QA test over browsers
>>
>> again, try to don't mix OS.
>>
>> saludos
>>
>> gabriel
>>
>> On Sat, May 10, 2008 at 1:44 PM, David Otton <david@otton.org> wrote:
>> > 2008/5/10 robert mena <robert.mena@gmail.com>:
>> >
>> >> I am looking for tips regarding improving the development process.

>> I'll
>> >> explain my current setup and please feel free to comment.
>> >>
>> >> My developers all use windows + eclipse PDT, the workspace is hosted

>> (via
>> >> samba) in a Linux server with Apache/PHP/MySQL. I am in the process

>> of
>> >> adopting Unit testing (PHPUnit2) and debug (Xdebug) so I have

>> concerns
>> about
>> >> how to property use this.
>> >>
>> >> For example, in my current setup I'd have to enable SSH so they could

>> run
>> >> the tests from the command line in the development server, but I am

>> not
>> sure
>> >> if I could remotely use Xdebug.
>> >
>> > Your description (specifically, Samba) suggests that you're not using
>> > source control. If you want to go for TDD (I don't know that you do,
>> > but IMO it's a good direction to move in) I would suggest a
>> > three-server setup - dev, staging and live.
>> >
>> > The dev server(s) are where you work. One per developer. Once you're
>> > happy with your code and your tests, you commit your changes to source
>> > control. This is where it gets clever. You can use pre- and
>> > post-commit hooks to run an automated build process that pushes the
>> > changes to a staging server, automatically runs the unit tests, and
>> > accepts/rejects the commits based on the test results. You can even
>> > lint the code, and reject anything that isn't in the house style.
>> >
>> > With larger projects, where an entire publish-and-test on each commit
>> > becomes impractical, you can just run the build process and unit tests
>> > every n hours, and mail out the results.
>> >
>> > Publishing to the live server is simply a matter of running the build
>> > scripts with a different destination.
>> >
>> > On top of all that, run an issue tracker. /Everything/ goes in the
>> > issue tracker, bugs, features, whatever. When you make a commit, that
>> > commit should be closing an issue in the issue tracker (via commit
>> > hooks again). That way you can track each change that's been made back
>> > to its reason.
>> >
>> > All of this is opinion, of course, there's no Right Way. Just take
>> > what's useful to you.
>> >
>> > --
>> > PHP General Mailing List (http://www.php.net/)
>> > To unsubscribe, visit: http://www.php.net/unsub.php
>> >
>> >

>>
>>
>>
>> --
>> Los sabios buscan la sabiduría; los necios creen haberla encontrado.
>> Gabriel Sosa
>>

>



  Réponse avec citation
Vieux 19/05/2008, 14h00   #8
Richard Heyes
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: [PHP] Improving development process / with developer setup

> Or depending on your budget, Switch the developers to Macintosh
> computers, install windows via parallels, and then you can test in
> Mac/Unix/Windows all from 1 computer


And watch everyone quit... :-)

--
Richard Heyes

+----------------------------------------+
| Access SSH with a Windows mapped drive |
| http://www.phpguru.org/sftpdrive |
+----------------------------------------+
  Réponse avec citation
Réponse


Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +1. Il est actuellement 10h58.


Édité par : vBulletin® version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0 RC5 Tous droits réservés.
Version française #16 par l'association vBulletin francophone
PHWinfo est un site Éducation Sans Frontières ©2000-2008
Ad Management by RedTyger
©Tous droits réservés par les parties respectives
Page generated in 0,22894 seconds with 16 queries