This exercise is NOT to promote my system It is to give you a glimpse into what I have had to go through to make my development come to life.
History
I was fortunate to begin my development of these systems way back in 1999. At that stage it was a site for a local agent. I was one of 3 partners and the one with no experience, one was a designer and one was a developer and there was me, pretty much a nothing marketing type person, although I had been in related industries for 7 years. At the time of becoming a partner we had 2 clients. During the development process, I thought about having a system that we could develop for all agents.
I knew nothing about the industry (many still think I don’t) but I did listen and understand what my client wanted. Pretty soon we had a little system up and running and we eventually had around 10 agents.
We then set about improving the system and within 4 years had around 30 agents, generating around 100K a year.
Things generally soured between the partners and we all wanted different things. I ended up leaving the partnership and starting out on my own taking all of the real estate software and agents with me.
Starting Over
So in 2004 I pretty much had to start over, hire a new company to do the work. This is where my troubles started. My previous company (who I thought were great with development) pretty much just slapped things together and added and added and added. I soon realised how important it was to get things right, however I was still small and could not afford the expense of starting over again.
I spent two years just getting the system reliable and cleaning up the mess I was left with. In early 2006 I decided that I had to start over and I set about working out how I could build a system that was stable, fast and above all adaptable.
Building
We started first coding in April 2006, this was about the time web 2/AJAX/RSS came to the fore and open standards development was all the rage, which has been a blessing for all of the industry.
So now as I come to the end of development (slowly) it has been a massive learning curve and I now understand 100% what my systems are built on, the importance of good development standards and an grasp of the industry.
The whole exercise will have cost me a hell of allot of money. For 12 months I have not taken on any new agent clients but have branched out into blog development for other industries.
In the next few months I will be launching the new system and here are some lessons learnt.
1. Never ever trust the developer to just go away and build something important without understanding what it is built using and why it should be buiult vin such a way.
2. Always make sure you get documentation and understand what this documentation must contain. This is because developers are in demand and will be for a long time to come- so they will leave – do not be left with something no -one else will care to continue with.
3. Interface Designers come last. They come in after you have built a text based system that works and flows correctly. Most of you will have had your website designed first. This is the wrong way around. A site or system MUST be text/layout based first with pretty time coming in last. This will not satisfy most. But you choose your designer because they are good. If you have done your homework you do not need to get them to prove themselves.
4. Develop EVERYTHING in a standards based environment. Most large companies will not do this and most web development companies don;t like it because it gives you freedom to leave. By choose a development platform that is popular and open allows you the freedom to know there are many developers out there who can take over…..
5. Own your SOURCE designs and photography. Most web design firms will tell you that you own 6your site. However, they by default own the source materials that make up all of your graphical elements. If you want some changes done by someone else other than your original designer you will need the source files (nearly always a photoshop ‘PSD’ file with layers). Get them to agree to this in writing from the beginning and provide this to you on DVD/CD at completion of project. As for photography, I have had many an argument with photographers. For many years the negatives were the ownership of photographers and still today by law they own the original files. This is just stupid, make sure you tell them who is boss and that you own the original files and get them to supply you with the same.
6. Cousin Johnny
We all know your nephew, cousin brother in law is a wizard on computers! Sadly I must inform you that someone who knows a little about technology is generally not a wizard. Even university graduates are sometimes poor developers, why? Because their teachers do not know the first thing about development and they usually teach them with software that does all of the code building for them. Fundamentally a good developer is someone who builds things from scratch using raw code. Make sure you ask to see what they have developed.
7. Web Design & Development Firms
Web developers come in all shapes and sizes (talent and no talent) . Today web development is becoming very specialised. Residential agents are usually very good at selling residential properties, we all specialise in certain fields. There are hundreds of developers out there who have developed real estate websites. Pick one of them to do your website. If you choose a developer who has never done a real estate site properly more than likely you will have to hold their hand through the whole process. Do your home work!
Here is some of the software I have used for my new system, that you should (do not have to) develop in because many non Microsoft developers ( not that MS software is bad, it is just I don’t like being tied to one company) uses this software. I am using some text from Wikipedia to explain these tools. You do not have to use these tools, but I would suggest you do as they are supported by the World Web Consortium in most cases and will make your sites and systems work perfectly with every major browser and system and any good web developer would struggle to suggest against this.
1. PHP
PHP (PHP: Hypertext Preprocessor) is a reflective programming language originally designed for producing dynamic Web pages and remote application software.[1] PHP is used mainly in server-side scripting, but can be used from a command line interface or in standalone graphical applications. more
2. MySQL
MySQL is a multithreaded, multi-user SQL database management system (DBMS)which has, according to MySQL AB, more than 10 million installations.
MySQL is owned and sponsored by a single for-profit firm, the Swedish company MySQL AB, which holds the copyright to most of the codebase. This is similar to the JBoss model and how the Free Software Foundation handles copyright in its projects, and dissimilar to how the Apache project does it, where the software is developed by a public community, and the copyright to the codebase is owned by its individual authors. more
3. AJAX
Ajax, shorthand for Asynchronous JavaScript and XML, is a web development technique for creating interactive web applications. The intent is to make web pages feel more responsive by exchanging small amounts of data with the server behind the scenes, so that the entire web page does not have to be reloaded each time the user requests a change. This is meant to increase the web page’s interactivity, speed, and usability. more
4. CSS
In computing, Cascading Style Sheets (CSS) is a stylesheet language used to describe the presentation of a document written in a markup language. Its most common application is to style web pages written in HTML and XHTML, but the language can be applied to any kind of XML document, including SVG and XUL. The CSS specifications are maintained by the World Wide Web Consortium (W3C). more
5. XML
The Extensible Markup Language (XML) is a W3C-recommended general-purpose markup language that supports a wide variety of applications. XML languages or ‘dialects’ are easy to design and to process. XML is also designed to be reasonably human-legible, and to this end, terseness was not considered essential in its structure. XML is a simplified subset of Standard Generalized Markup Language (SGML). Its primary purpose is to facilitate the sharing of data across different information systems, particularly systems connected via the Internet. Formally defined languages based on XML (such as RSS, MathML, GraphML, XHTML, Scalable Vector Graphics, MusicXML and thousands of other examples) allow diverse software to reliably understand information formatted and passed in these languages. more
6. XHTML
Extensible HyperText Markup Language, or XHTML, is a markup language that has the same depth of expression as HTML, but a stricter syntax. Whereas HTML is an application of SGML, a very flexible markup language, XHTML is an application of XML, a more restrictive subset of SGML. Because they need to be well-formed (syntactically correct), XHTML documents allow for automated processing to be performed using a standard XML library—unlike HTML, which requires a relatively complex, lenient, and generally custom parser (though an SGML parser library could possibly be used). XHTML can be thought of as the intersection of HTML and XML in many respects, since it is a reformulation of HTML in XML. XHTML 1.0 became a World Wide Web Consortium (W3C) more
10 Comments
Angus
I think you are confusing ‘interface design’ with graphical design. Interface designers do need to be involved from the start as they can dramatically effect not how things look but how they ‘feel’ to use. There are many pieces of software out there that look terrible but are great to use because they are well designed from a usability stand point. No need for always needing a manual/support desk to achieve what you want etc.
Peter
Angus
Thank for you comment. My opinion is that graphical design hampers development, because designers leave out things that are important for navigational flow AND hamper usability.
I previously worked at one company where the designer would get so upset if you challenged his idea of design )he thought he was an artist) he would cry and go home.
By calling in designers last they are given the guidelines to build around and make things look good.
Not to say developers are great at it, I would prefer a usability expert to manage that and so yes you are correct. However how many web development companies have usability experts?
These should be in independent of that company and hard….We could all borrow from Jakob Neilson but then the Internet would be all in text, middle ground is somewhere perfect.
Your use of Interface designers is more of an expert on these issues.
Dave Platter
(I work at realestate.com.au Ltd/The REA Group)
Very interesting, Peter. Thanks for that. As a non-techie I found your explanation enligtening.
dave
Dave Platter
(I work at realestate.com.au Ltd/The REA Group)
Peter, one more thing. The other day you asked about whether we use open source software. This article, in the fourth graph from the bottom, shows that we do in at least one case.
http://www.computerworld.com.au/index.php?id=727980553&eid=-6787
Be well.
dave
Peter Ricci
Yes I read the article, it says it was built in Mod Perl. That is the very program I got out of as soon as I could, very hard to get anyone who can develop in Perl and who is any good at it and it leaves a mess if it is not programmed effectively
I use MySQL and also Apache Webserver..
PS: Mod Perl is a hack for Perl to speed it up, Perl is the actual language.
Peter
Dave….Open source is not the be all and end all and large corporations may tend to drift to a robust database such as Oracle (excellent but expensive to run – cost of software and technicians) and Microsoft’s solutions. However I am specifically referring to Agents own developments….
MySQL does all it needs to for even massive companies…
This was not a sleight at other software products, but the ones I have mentioned are tried and tested and supported by thousands of developers worldwide…
Elizabeth
Peter,
Just for the record, whilst I have read this article almost three times now, it is all gobbeldygook to me I am afraid.
Still it reads impressive.
E
Elizabeth
Peter,
I think I can contribute to this section.
If you are thinking of improving this site, could we have a link at the bottom of each blog to take us back to the top?
This way I could navigate just a little faster.
E
Website developers
“I knew nothing about the industry (many still think I don
Paul Krayven
I personally agree with you peter about building a text based system first. CSS is extremely powerful and if you structure your site correctly at the start you’ll only ever need to pay a designer for the design and not have to redo all the complicated back end.
Excellent article.