The ProgrammersTalk Community
Forum Register Search Today's Posts Mark Forums Read
Register

Go Back   The ProgrammersTalk Community > The ProgrammersTalk > General Talk


Welcome to the The ProgrammersTalk Community forums.

You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today!

If you have any problems with the registration process or your account login, please contact contact us.
Reply
 
LinkBack Thread Tools    Display Modes   
  #1 (permalink)  
Old 02-08-2008, 01:26 PM
Lee's Avatar
Lee Lee is offline
PT Staff*
Awards Showcase
Quality Tutorial 
Total Awards: 1
Join Date: Jun 2007
Location: Blackpool, UK
Posts: 616
iTrader: (0)
Lee will become famous soon enoughLee will become famous soon enoughLee will become famous soon enoughLee will become famous soon enough
When creating a program or script...?

Hey,

I was just wondering what steps everyone takes in making a program, do you just make it or do you plan out what you are going to do?

If you plan your program or script do you use software to record certain things? Do you draw things out? What do you do?

For me i normally just end up making it but i think if i planned what i was going to create i would get it done to a higher standard, this is the main reason why i ask what you lot do

Discuss...
Lee.
Reply With Quote
  #2 (permalink)  
Old 02-08-2008, 01:38 PM
MrPickle's Avatar
MrPickle MrPickle is offline
Sr. Programmer
Join Date: Nov 2007
Location: England, Lincolnshire
Posts: 279
iTrader: (0)
MrPickle is on a distinguished roadMrPickle is on a distinguished roadMrPickle is on a distinguished road
Before I write anything I get a rough idea of how to do it, then try that, if that fails I just go with the flow.

__________________
PM me and tell me your name or a phrase and I shall write it in Elf for you. English Tengwar to be precise.
Digg this Post! Del.Icio.Us this Post! Technorati this Post! Furl this Post! Mister Wong this Post! Newsvine this Post! Spurl this Post! Reddit this Post! Netscape this Post!
Reply With Quote
  #3 (permalink)  
Old 02-08-2008, 05:42 PM
TeraTask's Avatar
TeraTask TeraTask is offline
PT Staff*
Awards Showcase
Quality Tutorial Quality Tutorial Quality Tutorial 
Total Awards: 3
Join Date: Jun 2007
Location: Reno, NV
Posts: 428
iTrader: (0)
TeraTask will become famous soon enoughTeraTask will become famous soon enoughTeraTask will become famous soon enoughTeraTask will become famous soon enoughTeraTask will become famous soon enoughTeraTask will become famous soon enough
Depends on the complexity. A single, short script and I just sit down and write it. A full-on application and I model out the code structure, the database structure, and a few use case scenarios before even sitting down to code. The most valuable is always the database structure model which I take to close to 3NF (some violations are allowed when it will result in significantly faster processing).

__________________
Jeremy Miller
Content Farmer - Optimized Automated Blog Posting

Digg this Post! Del.Icio.Us this Post! Technorati this Post! Furl this Post! Mister Wong this Post! Newsvine this Post! Spurl this Post! Reddit this Post! Netscape this Post!
Reply With Quote
  #4 (permalink)  
Old 02-08-2008, 06:03 PM
Lee's Avatar
Lee Lee is offline
PT Staff*
Awards Showcase
Quality Tutorial 
Total Awards: 1
Join Date: Jun 2007
Location: Blackpool, UK
Posts: 616
iTrader: (0)
Lee will become famous soon enoughLee will become famous soon enoughLee will become famous soon enoughLee will become famous soon enough
I was expect something like that from you Tera lol, could you expand on how you model out the code?

I know how to take my Database to 3NF so i will maybe start using normalisation when using databases, could you also tell me if there are any further advantages of going beyond 3NF?
Reply With Quote
  #5 (permalink)  
Old 02-08-2008, 10:08 PM
TeraTask's Avatar
TeraTask TeraTask is offline
PT Staff*
Awards Showcase
Quality Tutorial Quality Tutorial Quality Tutorial 
Total Awards: 3
Join Date: Jun 2007
Location: Reno, NV
Posts: 428
iTrader: (0)
TeraTask will become famous soon enoughTeraTask will become famous soon enoughTeraTask will become famous soon enoughTeraTask will become famous soon enoughTeraTask will become famous soon enoughTeraTask will become famous soon enough
For code modeling, I model the structure, not the individual scripts. So, I'll have an index.php driver, an images folder, an includes folder with a template, a driver class, etc... I usually use a tree to model that all out.

As for 3NF, be sure to check for scenarios when 3NF isn't very helpful for live DBs (e.g. when a join is unnecessarily expensive and duplicating a key speeds things up.)

I never learned beyond 3NF. All I heard about beyond that is that it was mainly an academic exercise. 2NF or less, however, is bad for many reasons, so I usually hit between 2NF and 3NF, breaking rules only for speed issues.

__________________
Jeremy Miller
Content Farmer - Optimized Automated Blog Posting

Digg this Post! Del.Icio.Us this Post! Technorati this Post! Furl this Post! Mister Wong this Post! Newsvine this Post! Spurl this Post! Reddit this Post! Netscape this Post!
Reply With Quote
  #6 (permalink)  
Old 02-09-2008, 12:18 AM
ccoonen ccoonen is offline
PT Staff
Awards Showcase
Quality Tutorial Quality Tutorial Quality Tutorial Quality Tutorial 
Total Awards: 4
Join Date: Jun 2007
Location: Wisconsin
Posts: 308
iTrader: (0)
ccoonen is on a distinguished roadccoonen is on a distinguished roadccoonen is on a distinguished roadccoonen is on a distinguished road
Completely depends on the type of project, I've been doing a lot of AS3 projects lately, so we have the designer build the comps, get them approved by the client, then I'll build a prototype. The prototype doesn't have "real" functionality, it just displays the app flow and how elements interact (eseentially the visual and interactive portion) - once this is approved internally, I'll build the real app to mirror the prototype but usign real Models and Views with real interactions and events.
Reply With Quote
  #7 (permalink)  
Old 02-09-2008, 10:57 AM
HelloWorld's Avatar
HelloWorld HelloWorld is offline
Programming Expert
Awards Showcase
Quality Tutorial 
Total Awards: 1
Join Date: Jun 2007
Location: In front of computer...
Posts: 1,111
iTrader: (0)
HelloWorld will become famous soon enoughHelloWorld will become famous soon enoughHelloWorld will become famous soon enough
Yes, it's totally depending on the project.. If it's for fun, I tend to just code it right away but having the rought idea on how do I want it to be, but as TeraTask has pointed out, if it's a complex system, then I tend to wrote it down first before getting into the coding part so that I know the flow of the system.

I tend to draw UML for Database design... Although I'm still suck at it haha...

__________________
PHP Code:
System.out.println("Hello World!"); 

Digg this Post! Del.Icio.Us this Post! Technorati this Post! Furl this Post! Mister Wong this Post! Newsvine this Post! Spurl this Post! Reddit this Post! Netscape this Post!
Reply With Quote
  #8 (permalink)  
Old 02-09-2008, 04:10 PM
Lee's Avatar
Lee Lee is offline
PT Staff*
Awards Showcase
Quality Tutorial 
Total Awards: 1
Join Date: Jun 2007
Location: Blackpool, UK
Posts: 616
iTrader: (0)
Lee will become famous soon enoughLee will become famous soon enoughLee will become famous soon enoughLee will become famous soon enough
Thank you all for your input so far, it has benefited me a little to know how others do it and i hope others reading this thread will benefit just as i have.

I am about to embark on a medium size project, i have myself, another coder and hopefully another designer/coder, we all live within the same time zone but we do not live near each other in anyway to work on things together, all the work will be done on each persons computer.

What measures would you advise for team work?


We have the use of MSN but obviously we are not all on at the same time so i thought how about set up a password protected forum at subdomain.domain.com such as a phpBB3 one and use that as the main discussion.

Would you think setting deadlines that we can all agree on would be the best way to manage time?

Please could you give me all your suggestions for how to make project like this run smooth, obviously there's always some sort of problem but to avoid most of the common problems like not knowing where people are up to with coding etc...

Thanks,
Lee.

P.S. This will be the first project i have managed, i believe i would be good at managing things, tips will help me and others reading to improve, i don't want this to be my first and last project that i manage lol.
Reply With Quote
  #9 (permalink)  
Old 02-09-2008, 04:22 PM
TeraTask's Avatar
TeraTask TeraTask is offline
PT Staff*
Awards Showcase
Quality Tutorial Quality Tutorial Quality Tutorial 
Total Awards: 3
Join Date: Jun 2007
Location: Reno, NV
Posts: 428
iTrader: (0)
TeraTask will become famous soon enoughTeraTask will become famous soon enoughTeraTask will become famous soon enoughTeraTask will become famous soon enoughTeraTask will become famous soon enoughTeraTask will become famous soon enough
First, use Model-View-Controller to keep various aspects of your design separate from each other. Since there will be multiple programmers, you have, afaik, 2 options:

1) Use CVS. I personally hate CVS, but 1000's love it.

2) Choose one person to manage the code and all coders submit changes to that person who then checks it against the other code to ensure no conflicts WinMerge is the only thing that makes this possible. Be sure to archive working code bases before upgrading. This may seem like more work, but it's the only way I keep my head on straight and I insist on reviewing code line-by-line before adding it to a base to check against security flaws and intentional hacks. I have to say, however, that I've never been on a project where I'm in the role of anything but lead, so I can't speak from others' perspectives there.

As for timelines. A GANTT chart is nice for some. For me, a calendar of deadlines is helpful. Nothing beats daily communication from the project lead as coders are lazy, in general, and will put things off as long as possible. But, if you're constantly asking about how things are going, some progress will be made before the last week anything is due.

As for the forum, the key thing is whether it's regularly checked. I find those things slow me down, so I never go to them. There are also software project management solutions out there which allow you to delegate tasks to a coder, file bug reports, and communicate back-and-forth. Again, I never take the time myself to go to these things and nothing really substitutes for one-on-one communication which I do through email and phone (email for important things so that there is a record and phone for shorter or more detailed things which need to be discussed).

I don't claim my methods to be the best for everyone. They are the best for me.

One thing to be very cautious about is the order in which you build the system. Building a part before its dependencies are completed (or at least its member functions stubbed) can be a major pain in the but and send a project into a tailspin. Here, use case scenarios can help you as well as well-designed models.

Hope this helps you forge forth on your first project. When you get time, you may want to look at the field of systems analysis which explores a variety of techniques for project management as well as system design and optimization.

__________________
Jeremy Miller
Content Farmer - Optimized Automated Blog Posting

Digg this Post! Del.Icio.Us this Post! Technorati this Post! Furl this Post! Mister Wong this Post! Newsvine this Post! Spurl this Post! Reddit this Post! Netscape this Post!
Reply With Quote
The Following User Says Thank You to TeraTask For This Useful Post:
Lee (02-09-2008)
  #10 (permalink)  
Old 02-09-2008, 04:23 PM
MrPickle's Avatar
MrPickle MrPickle is offline
Sr. Programmer
Join Date: Nov 2007
Location: England, Lincolnshire
Posts: 279
iTrader: (0)
MrPickle is on a distinguished roadMrPickle is on a distinguished roadMrPickle is on a distinguished road
Something that automatically checks for updates then informs the user or automatically downloads would be good for team projects.

__________________
PM me and tell me your name or a phrase and I shall write it in Elf for you. English Tengwar to be precise.
Digg this Post! Del.Icio.Us this Post! Technorati this Post! Furl this Post! Mister Wong this Post! Newsvine this Post! Spurl this Post! Reddit this Post! Netscape this Post!
Reply With Quote
Reply


Thread Tools
Display Modes

   Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT -7. The time now is 12:05 PM. Powered by vBulletin
Copyright © 2000 - 2007, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO © 2007 ProgrammersTalk Sedo - Buy and Sell Domain Names and Websites project info: programmerstalk.net Statistics for project programmerstalk.net etracker® web controlling instead of log file analysis


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50