Jim Lawrence
accessd at shaw.ca
Fri Apr 4 19:45:11 CDT 2008
I profess to be no expert but I will give a few comments on what I do know. Most of the new applications are now web based. The pluses are: 1. A large market, immediately. 2. Centralized control, backups and immediate updates and fixes. Clients can access their data from anywhere. 3. You already know a number of web languages already. 4. Multiple web languages can be intregrated into a single project. The Negative: 1. Development of infra-structure can be a major adventure. 2. Controlling and communicating far flung developers can be more than interesting. Overview comments and observations: 1. An infra-structure like Subversion will support remote development, MSN, Gmail for inline talk or products like Skype and Gizmo, centralized BE server(s). 2. Controlling the BE server with its database and web server is mandatory. Steady and regular backups are more important than ever. 3. Front end modules should limit the use of .Net/PHP/etc that call back to the server except for data requests and business rule processing. FE functionality (anything to do with presentation), should be done, where possible in JavaScript. This gives faster client performance and limits the impact on the BE server. (Note: All the languages can run off either a MS or Linux server... .Net through MONO). 4. Establish clear lines of responsibility for each developer. Be ready to remove people who are not performing or are threatening the project in various ways. 5. Having a client who is bank-rolling the project is a definite plus. Or baring that try to set up a developer Co-op and talk everyone into investing in it.... this can be real tricky with everyone needing a clear contract... like who owns the code... How will compensation be distributed etc etc... The above is nothing to do with managing a project but rather my observations on the issues involved with web based projects which I have been involved with a few times. Some gone off the rails immediately and others have been very successful. HTH Jim -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Arthur Fuller Sent: Friday, April 04, 2008 12:05 PM To: Access Developers discussion and problem solving; Discussion of Hardware and Software issues Subject: [AccessD] Project Management Path At my ripe old age, I am pondering becoming a manager of software projects rather than a developer of same. I have occasionally led a team of developers toward a project goal, but more often been the principal developer of a project. I am wondering how to make the leap. While realizing that this is a list for developers, I also think that this might be the best place to ask this question. I know a lot about Access. I know a little about .NET. I know a fair amount about PHP and Python Ruby and Ruby on Rails. I know a little about some strange languages used by very few, including OCaml. I have only occasionally been team-lead in a multi-developer project. I think I did pretty well in them. So how does one go from Developer to Manager of Developers? I think that I'm growing too old to be there in the trenches of develpment, and yet that's what I love and know best. But I think that the young recent graduates have the "stay up until it works" enthusiasm that I no longer have, although that's not always true; I've recently spent 40 hours solid at the box solving a particularly difficult problem, and couldn't quit until I finally cornered the ornery pig and wrestled him down. But perhaps a younger, brighter person could have wrestled said pig down much more quickly than I, which leads to a rather sickening and embarrassing conclusion (following the Peter Principle): the best thing to do with Arthur is promote him. So, how to become a manager of programmers who are far more gifted in languages that I know a little about? How does one go from Here to There? How do I admit in my resume that I know a fair amount about the abstract language of programming but perhaps nothing at all about the language your project is using? What are the credentials of a Project Manager? I am particularly interested in asking this question here, since you are all programmers, which perhaps turns the question into "What values would you desire in your project manager?". One could trivialize this question into, "Just learn MS-Project" but that is hardly the point. Any fool can write a critical path. That's not the issue at all. As I see it (and admittedly I know nothing about the subject), there are two issues|perspectives: 1. Tell the team what needs to be done and how quickly. 2. Tell the superiors why it cannot possibly happen in said time-frame + expense-dollars. On both sides, I am guaranteed to meet resistance. Developers will say, "Impossible!" Superiors will say, "Impossible!" And the job of managing a software project is to get each team to bend a little. Of course, I know nothing about this profession, which was the whole point of this message. I'm looking for direction, courses to take, casual advice, and so on. I actually dare to presume that I could be fairly good at this profession, but perhaps not. Perhaps I'm an in-the-trenches guy not destined to coach the team. That could be. -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com