As was foretold, we've added advertisements to the forums! If you have questions, or if you encounter any bugs, please visit this thread: https://forums.penny-arcade.com/discussion/240191/forum-advertisement-faq-and-reports-thread/

Website Design and you (well me)

WillisIVIIXWillisIVIIX Registered User
edited March 2009 in Help / Advice Forum
So I have a one off contract opportunity for a business my brother works for that's been floating around for a couple years, worth a decent penny and unseemingly difficult. It's a nine task job but only four of them actually require any developement time the rest are communication between dev and client. We're going to be given a year to complete, give or take a month of testing, communication delays and implementation. Now my programming experience is unfortunately dated and my web design is just as dated but not as well studied, but at a glance it should be clean cut and smooth. Except no.

So here's my problem, I'll break down the tasks that matter while being brief;

Task 1: Compile 200+ seperate spreadsheets into one main table. Done
Task 2: Create a website that references the newly compiled database for online viewing. Done
Task 3: Create a search that pulls data from the database at the users command, while being flexible and unnecessarily difficult. Started by hamfisting code
Task 4: Add bells and whistles, search queries optioned to call up google maps for visualizing the data and others. Not done

So here's my problem. Task 1 was easily finished with Microsoft Access. Task 2 was proven to be a pain and might be ripped down then started fresh. So before I continue on I'll explain Task 2.

The database as of this moment is sitting as a Microsoft Access Database. The database itself is more a glossary of static data that we want a user to call up on command, not a database that could be easily adjusted by the user just one maintained on an administer level. It's job isn't to adjust data on the fly that most books I've read like to assume, it's just a reference guide really. So I read online that SQL Databases are usually better suited for web based design, and I started to research SQL. I purchased a SQL book that was actually leading me to build a SQL server not just a database, as I've said the data is already compiled, just looking to drop it in so to speak, the server handling is someone else's job. So for now we've run with a MS DB that shaped up decently by using MS Visual Web Developer, although you can't sort the table at all which sucks. So done, although probably not a good foundation.

Task 2 as of right now we have a simple page that queries the two columns that matter the most using drop down boxes which is all the search is really going to need based on the data we're querying. But the way the tutorials I've found that has given me any success uses the GUI's tools more than instructs me to adjust the code or give me any syntax what so ever, and that being the biggest problem.

We've gone through 3 different books for setting up our plan of attack and at least 3 different web design compilers, yet we can't manage to break the fold. The books we've found have been out of date showing code that doesn't work anymore, or using tools inside the compiler that have been omitted in the lastest build. I first tried MS SQL Server but like I said it had me building a server, not what we need. My only success has been with MS Visual Web Developer but doesn't allow me to build a site on the fly to compare with my colleagues and it seems not really powerful enough, so we might look at MS Web Expression but we don't have the job yet so, coming up with $300 capital for a program we might not want or need isn't appealing. Recently we tried the new Dreamweaver and once we found that we had to build our own HTTP local server and use specific call protocol to create a database web page, we decided to explore other options.

Now maybe one of those compilers is the way to go, the problem is I don't know if or which will work. The documentation and books for web design are a joke. The authors either don't go into syntax or they take a lot of assumpation on what you know. Nevermind that the few I've read have editoral errors in the code. But most damning of all, they all skim the surface of web site database design, only having you attach the main table to the site and telling you to swim.

Since we don't have the job yet should we abandon ship? Problem being we have been paid by a higher up for starting capital that we need to pay back. Are we too far gone from new coding that this is merely over our heads? I wouldn't like to think so. Is the major issue we're buying books from Barnes and Noble and not buying college textbooks? We've considered that. Or are we screwing up what we want by looking for books with Database Web Design, not maybe just web design, or just look up Visual Basic / Visual C books? Another thought we had.

So I don't know, every approach, every avenue I've taken seems to make this harder than it really needs to be or so it seems. Just looking for a good book (hopefully something that doesn't have for Dummies or Step by Step in it, those are a disgrace to the pages they are wasted on) and compiler I should stick with. I didn't like MySQL because it felt loose and unstructured. Can't use MS Visual Studios because it's a PoS and deletes my templates everytime I open the damn thing.

TL;DR: A group of guys and I can't build a database website, we suck. Various things we have tried didn't work. Commercial book stores carry crap in paperback that takes liberties in what you know and don't dive into the code. The database is only there to reference data not build and compile on the fly as most of those books would have you create. The best way I can describe what we're building is a greatly stripped down search engine like www.wowhead.com. We're just building the site not doing any of the admin work or assessment of the servers it will be put on.

If any of you super web coding savvy gentle sirs or ladies have any advice or a general direction I should look at, I'd greatly appreciate it.

Thanks.

WillisIVIIX on

Posts

  • exoplasmexoplasm Registered User regular
    edited February 2009
    For ease of learning and quick assembly you could probably pull this off fairly quickly with Microsoft's Visual Studio Express (free) line. There is one for web development and you can use your choice of VB.net or C#. For the most part you can drag and drop stuff onto the web page and follow through wizards to setup data views, sorting, and search. It has a built-in way to handle Access DBs I think. You won't have to code too much since the wizards will take care of most of the data handling.

    Then you just add the pretty stuff afterwords (HTML, CSS, google stuff). There are plenty of tutorials and the MSDN help docs are very thorough.

    This of course assumes you'll be running the website on a Windows web server.

    exoplasm on
    1029386-1.png
    SC2 NA: exoplasm.519 | PA SC2 Mumble Server | My Website | My Stream
  • GanluanGanluan Registered User regular
    edited February 2009
    It could actually be run on any server as long as it has the .NET Framework that corresponds with what version he develops it in.

    I second the recommendation to use VS Express. Visual Studio is pretty easy to learn and makes simple data access and such very easy.

    Ganluan on
  • WillisIVIIXWillisIVIIX Registered User
    edited February 2009
    As far as I got with Studios before it bugged out and deleted my templates, I started building it as a ASP.Net website template using VB code and attached the database to the project. that's as far I as got before it blew up. I might try another reinstall of Studios, seeing as every fix I've found on MSDN and through Google had me downloading several hotfixes but never fixed the problem.

    So far playing with Visual Web Developer it feels like Studios and I'm sure it runs relatively in the same scope. I'll try studios again and go through MSDN some more, however most of the tutorials I've found are using the 2005 compiler builds and apparently a lot of stuff didn't return to 2008, the table adapter being one of them.

    At least you have reaffirmed me that this shouldn't be that hard. That in itself is a great deal of help.

    WillisIVIIX on
  • SeguerSeguer Registered User regular
    edited February 2009
    What do you guys know currently? What web technologies, if any?

    You can pretty quickly setup a very fast interface for "managing" a database. If you guys know SQL at least you can build up your queries for getting certain data out of the database, once you have the set of results, it is just a matter of displaying them on the web page.

    To start with this could look like shit. Honestly at that point it doesn't matter - if you can get the foundations working properly then hey, give it a face lift later.

    It does really tie back into what you currently know though.

    Seguer on
  • flatlinegraphicsflatlinegraphics Registered User
    edited February 2009
    sorry if any of this overlaps, as i may end up going either too complex or too simple.

    but yes, with sql server you are building a server because you need a server. a database is not like a picture or file that you just link to. you need to send POST and GET operations via http from the browser to the database, parse the output, and write it back to the browser.

    for example, you would have a form on a webpage. user inputs data, either by text feilds or drop downs. when they hit submit, the form POSTs to the webserver. the server creates a connection to the database. the database software,SQL Server, uses the sent data to run queries against the database. when the server gets its answer from the database, it sends the data back to the browser, usually with some html or other mark up. you cannot POST or GET directly to the database. you need a program in between.

    I would try just getting a single table up there with one entry, and see if you can connect, run a query, and spit out the result, before jumping in an running multiple selects and sorts on a 200+ sheet database. once you get the first connection, everything else is just details. and even if the data is relatively static, and you are only GETing data, and not POSTing, you still need to connect to the database and run queries. the page that receives the data builds the html and displays in the browser.

    so,
    page1 (contains all the form elements) -> POSTs data to a handler page -> handler page connects to database -> database runs query, returns results to handler page -> handler page creates html to display returned data.

    here is an asp article:
    http://www.devarticles.com/c/a/ASP/Two-Ways-To-Connect-To-SQL-Server-2000-Via-ASP/

    asp seems to be a bit more complicated than php/mysql. or it may be that because it is a closed system, there aren't as many resources (hacks) or publicly available libraries out there. you might want to look at this anyway:
    http://www.w3schools.com/PHP/php_mysql_intro.asp

    hope this helps (and that i didn;t misunderstand your question/problem)

    flatlinegraphics on
  • GanluanGanluan Registered User regular
    edited February 2009
    FYI - that article you linked is for ASP, not ASP .NET (at least from what I glanced at). The newest versions of ASP .NET make it stupid easy to set up data access.

    Ganluan on
  • NotYouNotYou Registered User regular
    edited February 2009
    If I were in your position, I'd put out some ads for a freelance coder on places like craigslist and get some quotes on how much it would cost for them to do it for you. See if you're still making decent money with that hit.

    NotYou on
  • HypatiaHypatia Registered User regular
    edited March 2009
    I'm a little confused by your mixing of the whole database versus database server thing. Like flatline was saying, unless someone has set up a DB server for you, you're going to need to set one up so that you can create the DB on it.

    It depends on what your experience is, you complained about books not getting into code so if you do have an idea of what you're doing code-wise I would suggest PHP and SQL, possibly using a CodeIgniter framework to neatly compartmentalize things because they're open source and have some really nice documentation online.

    In terms of other resources if you go with the above, http://php.net is a good reference, and some others are: O'Reilly's MySQL Cookbook which is great for stealing bits of code out of and modifying them for your use, or for just getting ideas, and his PHP Cookbook for the same thing.

    One of the nice things if you're rusty is that you can reference any of the syntax you aren't understanding in the book to php.net (For example: http://php.net/while)

    Also, if you're just trying to manipulate your SQL DB you can use something like SQLyog, which has a free version and gives you a bit more of a spreadsheet interface. I'm not sure of what your data looks like, but it might not be the most efficient thing ever to just shove all of it into one big table.

    The above advice though is made on the assumption that you'll be able to dive into the code. If you're looking for some kind of nice GUI/WYSIWYG editor it's less applicable.

    On a sidenote, if you're going to be setting up the web server stuff yourself I highly recommend Apache instead of IIS.

    Hypatia on
  • FightTestFightTest Registered User regular
    edited March 2009
    I don't think you really understand what a database is or what its purpose is. A database is not a spreadsheet. You don't sort tables in a database. I think when you say "build and compile on the fly" you mean queries.

    That said you're pretty clearly in over your head. IMO if you can you should return the money and tell them for whatever reason you won't be able to carry out the project, but if someone is dumb enough to hand out money with no check for qualification that's their problem if they get something super amateur in return. So here's the help/advice part.

    Step #1: http://www.apachefriends.org - Download XAMPP (for whatever OS you use). It's a simple, self-contained suite of applications to run your own little web & db development platform. Apache, MySQL, and PHP are all powerful, fairly simple, and more than enough for what your application would need. Plus they're free.

    Step #2: http://www.amazon.com/PHP-MySQL-Dynamic-Web-Sites/dp/0321336577/ - Get this book. It is by far the best beginner's guide to learning PHP & MySQL. It's simple to follow, has plenty of examples to do along with it, and will give you the fundamentals you need including database design and security.

    Step #3: Hopefully be capable of creating the app and getting project specs before accepting them in the future.

    FightTest on
    MOBA DOTA.
  • redraptorredraptor Registered User regular
    edited March 2009
    Didn't there used to be a thread about programming in this forum? Semi-unrelated but, I have a similar task which I needed to post a question about.

    edit; TECH FORUM FORGOT IT EXISTED.

    redraptor on
  • WillisIVIIXWillisIVIIX Registered User
    edited March 2009
    Well lucky the "capital" he shelled out wasn't a large sum of money, at least mine anyways, and I could square up with him no problem, so nothing at this point is lost besides some hair pulling and wtfs.

    Like I said right now we don't have the contract anyways so this is just testing the waters. Now that FightTest and Hypatia mention the DB server issue, that's a clear indication that either we (as the whole group) or our "manager" haven't been given the whole scope of what we need to do.

    Now that said, as far I as can tell all we have to do is build a web page of querying, the server of the DB and everything else was their IT guys job. Prehaps Visual Studios and ASP.NET has spoiled me with the small dose of success I've had with it, integrating the table to the page and being able to search/query it there, has turned me away from actively looking at MySQL and what not. However if even in doing that requires us to build the server etc, then I absolutely wouldn't have even had a remote interest in taking it because that is way out of my league, maybe the 3 other guys have a better grasp of it but they really aren't showing me that, regardless I'd bow out before names were signed on paper.

    This isn't a jesus that's a lot of money project, it was more of a, hey let's make some spending cash. So it's been an assumption of just how much work we had to do. I haven't seen the contract yet only seen our Proposal and it isn't in front of me atm, but I'm pretty sure nothing is mentioned about server design. That might be why we don't have the contract and may also show that the manager didn't read the contract thoroughly enough.

    Either way I'm setting this on the back burner of my mind until some questions are answered. But the info you all shared definitely reminded me that I'm way out of the web developement loop and will probably stay there.

    WillisIVIIX on
Sign In or Register to comment.