Wrox Programmer Forums
Go Back   Wrox Programmer Forums > Wrox Announcements and Feedback > Reader Surveys
|
Reader Surveys Here is where you get to weigh in on specific questions from Team Wrox, and maybe even get a free Wrox book for your feedback.
Welcome to the p2p.wrox.com Forums.

You are currently viewing the Reader Surveys section of the Wrox Programmer to Programmer discussions. This is a community of software programmers and website developers including Wrox book authors and readers. New member registration was closed in 2019. New posts were shut off and the site was archived into this static format as of October 1, 2020. If you require technical support for a Wrox book please contact http://hub.wiley.com
  #1 (permalink)  
Old May 13th, 2004, 09:22 AM
Authorized User
 
Join Date: May 2003
Posts: 34
Thanks: 0
Thanked 1 Time in 1 Post
Default Build from scratch, or use existing code?

When you set out to develop a new application, reagardless of langauge, how often do you sit down and just start writing code from scratch?

How often do you first look to see if there is already an open source, or freeware solution that you can customize to fit your needs?

Where do you look?
__________________
Chris Webb,
Executive Editor
The Following User Says Thank You to cwebb For This Useful Post:
  #2 (permalink)  
Old May 13th, 2004, 10:08 AM
Friend of Wrox
 
Join Date: Nov 2003
Posts: 1,285
Thanks: 0
Thanked 2 Times in 2 Posts
Default

I almost always start from scratch, sometimes even when I do find a pre-made solution (unless I'm in a hurry). You usually know an application you make far better than one you download :)

Snib

<><
  #3 (permalink)  
Old May 13th, 2004, 10:13 AM
Imar's Avatar
Wrox Author
 
Join Date: Jun 2003
Posts: 17,089
Thanks: 80
Thanked 1,576 Times in 1,552 Posts
Default

In the previous company I used to work for, we always tried to look for ready-made software. However, often we had as a requirement that the project was really open source, so we could reuse important parts and components, without using the entire application as is.

As a "system integrator", we were responsible for delivering large scaled applications that would fit in with the organisation's infrastructure and existing software and platforms. Often, open source or free-ware applications (or, in fact, any type of application) have their own structure, their own database, their own (proprietary) data format etc etc preventing us from integrating the application seamlessly.

So, we did use a lot of readily available source and software, but we always tried to incorporate and adapt it to our software, instead of offering it as a complete solution. We "borrowed" a lot of source for Web / Server controls, forums, CMS systems, menus, etc, but we always changed it so it would fit in with *our* existing programming guidelines, design decisions and customer's requirements.


Imar
---------------------------------------
Imar Spaanjaars
Everyone is unique, except for me.
While typing this post, I was listening to: Battlestar Scralatchtica by Incubus (Track 10 from the album: Make Yourself) What's This?
  #4 (permalink)  
Old May 13th, 2004, 08:58 PM
Friend of Wrox
 
Join Date: Sep 2003
Posts: 451
Thanks: 0
Thanked 0 Times in 0 Posts
Send a message via AIM to Ben Horne
Default

When developing Access applications, I always start from scratch as all of my databases are unique in what information they store as well as how they store it. However, there are some things that I use from other sources. Take for example the mvps.org website. The Access website that can be found there contains code that I have found to be very useful. A while ago, I found a bit of VBA code on this site in the Access VBA forum that was from Bob Bedell. It was code for a splash-screen form. Now, I needed a splash-screen form for my Music Inventory 2001 database and I got what I needed here. A lot of the things I find relating to VBA code samples are customized to fit my own needs.

  When looking for an already implemented solution, I don't just look on the internet. There are Access databases on my local computer that have what I can re-use. What I do to bring them into my database that I'm working on is this: I just do a copy in the source database, open the destination database and paste it in there. That way, I'm saving myself a lot of headaches.

Ben Horne
Madison Area Technical College - Truax
3550 Anderson Street
Madison, Wisconsin 53704-2599


-------------------------
http://community.webshots.com/user/valerian114

"There are two kinds of people in the world: Those who claim to be Flash junkies and those who actually are Flash junkies"
  #5 (permalink)  
Old May 17th, 2004, 04:32 PM
richard.york's Avatar
Wrox Author
 
Join Date: Jun 2003
Posts: 1,706
Thanks: 0
Thanked 6 Times in 6 Posts
Default

Early on I liked developing completely from scratch. As I've gained some experience I've realized how much of a hassle it is to reinvent applications that already exist elsewhere. At this point I find myself in a healthy balance of both. For instance in a project I did a few months ago I needed a calendar application. I found a suitable calendar appication available open source and used that as the foundation for my project, which eliminated a great deal of guess work and logic tinkering and sped the project along quite well I did in a few days what could have easily taken two weeks starting from scratch.

Often times however, many open source projects are sparsely documented or too customized to one particular usage, which makes them difficult for even a programmer of intermediate skill to adapt to their own needs and completly inaccessible to the beginner.

On the other hand though, there are many that are accessible and tried and true solutions to complex problems that to build from scratch would require months upon months of programming and testing. Building from scratch privately or proprietarily takes away some of the real world element where thousands of people are using, testing and improving the application in question.

These days I always do some searching for an existing solution before building from scratch. And I have one of my own in PHP PEAR at http://pear.php.net. It's a program that can be used as a webmail backend called Mail_IMAP. I started Mail_IMAP as a personal project, I wanted to build a webmail program from scratch. The project took somewhere between 6-8 months before I had a good enough understanding of how PHP's built in webmail functions work. I used some poorly written tutorials and some very sparse documentation on PHP imap_* functions to put together my program. At some point I wanted to go open source with the project. Since I put together and released the package on PEAR I have discovered a number of bugs and errors that I would have either never found or taken years to discover without the widespread testing. So going open source with the project has had huge advantages. I also have the luxury of being able to invite others to assist on the project whereas it can be improved even more. And yet, in this particular program, a ready to implement PHP webmail program using the imap function library, already abstracted and fully customizable didn't already exist somewhere else. The closest were squirrelmail and horde, which are very difficult to abstract to one's particular aesthetic needs. So building from scratch here filled a need in the market.

Regards,
Rich

::::::::::::::::::::::::::::::::::::::::::
The Spicy Peanut Project
http://www.spicypeanut.net
::::::::::::::::::::::::::::::::::::::::::
  #6 (permalink)  
Old August 9th, 2004, 01:51 AM
Friend of Wrox
 
Join Date: Jul 2004
Posts: 345
Thanks: 0
Thanked 1 Time in 1 Post
Send a message via MSN to gokul_blr Send a message via Yahoo to gokul_blr
Default

Start from the scratch considering the upgrades & enhancement over the existing will always give you the real satisfaction when the application also put forward with the usage of latest Technology.

Regards,
Gokul


  #7 (permalink)  
Old March 4th, 2005, 07:19 PM
Friend of Wrox
 
Join Date: Nov 2004
Posts: 1,621
Thanks: 1
Thanked 3 Times in 3 Posts
Default

Usually 80%-plus scratch.
The time taken to slog your way through the mountains of available samples is more than the time to develop it yourself—especially when you consider the drudgery factor.

When I have a piece I’ve written that works particularly well, and that I really like, I will wrap it up into a library to be reused though.
  #8 (permalink)  
Old March 8th, 2005, 01:10 AM
Registered User
 
Join Date: Mar 2005
Posts: 2
Thanks: 0
Thanked 0 Times in 0 Posts
Default

The only problem I have with getting code over writing it is that it usually is too vague or it has components that are useless (to me). Also it is hard to develop code from poorly written documentation.
  #9 (permalink)  
Old April 20th, 2005, 10:38 AM
Friend of Wrox
 
Join Date: Dec 2003
Posts: 488
Thanks: 0
Thanked 3 Times in 3 Posts
Default

I work as a sysadmin and dabble in web development stuff, so most of the code I write is relatively trivial, and I frequently end up writing from scratch. However, if there is a free software/open source library available to do some of the work I am more than happy not to reinvent the wheel.

Generally I find the FLOSS stuff out there is of such high quality and so tweakable that I couldn't justify trying to write my own version!

--
Don't Stand on your head - you'll get footprints in your hair
                                           http://charlieharvey.org.uk
                                              http://charlieharvey.com





Similar Threads
Thread Thread Starter Forum Replies Last Post
Existing Components Thami SQL Server 2005 0 August 8th, 2008 02:51 AM
How to create a search engine from scratch? cadvester PHP How-To 2 October 5th, 2006 08:54 PM
Object Existing moedev Access 3 April 12th, 2006 02:48 PM
Adding existing and non-existing attributes spencer.clark XSLT 5 July 27th, 2005 04:02 PM
Using Visual Studio vb.Net to build code sirandre007 Classic ASP Basics 1 March 28th, 2005 07:52 PM





Powered by vBulletin®
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Copyright (c) 2020 John Wiley & Sons, Inc.