LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices


Reply
  Search this Thread
Old 11-30-2010, 05:03 PM   #1
Ubunoob001
Member
 
Registered: Feb 2010
Location: New Orleans, LA
Distribution: Mint 16 RC, Elementary OS Luna, Crunchbang
Posts: 166

Rep: Reputation: 17
Smile newbie: trying to understand web development "flow/process/stages"


Hey again all...
Currently I am trying to more fully understand the macro-perspective of what is a typical path to web development. I am completely new to web-design and programming. Here is what I am working with so far:

Background
1. A friend and I have an idea for a website that is very data-heavy. The short synopsis would be that the site will need to take public domain data from a variety of other websites, order the data, then manipulate it algorithmically. This new output would be published in both graphical and text form on our site. (example at bottom of page in "")

2. Based on the great recommendations of posters in another thread (http://www.linuxquestions.org/questi...design-846094/), I have decided to go with Python as the language in which we will manipulate the data. (PHP was another main suggestion)

Given that we are completely new to xhtml, Python, javascript, flash and other terms such as "CMS", web development framework, the wealth of information available is rather daunting.

Question: Could someone please suggest a general resource or structure for learning about these things? For example, in which order should I learn about the tasks outlined below, etc . I would like to know what a typical development flow looks like. For example (and this may be a complete misunderstanding). It seems like I need to know how to do the following:
1. gather data from site X,Y and Z
2. manipulate the data using Language
3. Order that data into a dataset
4. Find a way (once the xhtml basics/javascript of the site is written) to integrate data into the xhtml, constantly updating

so the types of questions I have associated with each step above are
Q1. does one write a script in python to do (1) or is this used simply by a utility like wget?
Q2. this data manipulation can be done with python?
Q3. Ordering that data, does it occur via the programing language Python, or via some other way? Is MySQL simply a formating scheme or is it actually a WAY to order the data?
Q5. How does one inject this updating data into the site (into xhtml,Java, Flash etc)

Ultimately can someone suggest a way/structure/order to start learning. I certainly don't expect to be "told" how to do these things, or even how to learn to do these things, but just a general suggestion as to the orderand structure of learning that would help me achieve, eventually, my objective?

Thanks so much for the suggestions. I realize that no one can "hand-hold" me through this process, however if someone can suggest some resources that might prove helpful so that I can understand enough to ask meaningful questions, id greatly appreciate it. This will be a long process given my naiveté regarding programming and development but Im rather excited. Thanks!

edit: below is an example of the type of thing I would like to do.
Quote:
For example, say a city or police-department posts
1. "real-time" updates to its website of the time, and location of traffic accidents.

2. accident data from the past in each given location

and suppose a weather service (NOAA) posts

3. weather conditions for given locations (at a specific time)

and suppose

4. given the time of day/day of the week is a factor in mood which impacts driving behavior of drivers.

5. how many on-ramps per mile there are (more risk of accidents) etc.


and suppose I wanted to combine all this information algorithmically, weighting it, so that it would yield some output X(1,2,3,4,5) =DR = "driver risk" by location along a highway, so as to indicate not just existent accidents, but risk. Then the setup would color-code a google map accordingly which would self update at regularly scheduled, small intervals.

then allow the user to mouse-over an area on the road map and a box would pop up indicating data, links to data, etc etc etc

this sort of thing.

Last edited by Ubunoob001; 11-30-2010 at 05:14 PM.
 
Old 11-30-2010, 05:14 PM   #2
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,222

Rep: Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320
Install Django. Work through the 4-part tutorial on their website. That should get you started and answer a lot of your questions.

Quote:
1. gather data from site X,Y and Z
Quote:
does one write a script in python to do (1) or is this used simply by a utility like wget?
It depends. Some websites intentionally provide machine-readable data in formats like XML. RSS feeds are an example of that. Otherwise, the keyword you need to look up is "scraping."

Python provides library functions to download data via HTTP. You'll find them in Python's library reference. You don't need to spawn wget.

Quote:
manipulate the data using Language
Quote:
this data manipulation can be done with python?
Manipulating data is what programming languages are for .

Quote:
Ordering that data, does it occur via the programing language Python, or via some other way? Is MySQL simply a formating scheme or is it actually a WAY to order the data?
Q5. How does one inject this updating data into the site (into xhtml,Java, Flash etc)
You really need to learn how a relational database works. There are many books and webpages on this, and I'm sure you can find them. The short answer is that you design your MySQL database to organize the data and you write Python code to insert the data into the database. When you write Python code to pull data out of the database, you specify parameters such as ordering. For the lurkers: yes, Python code, not SQL code; Django provides an ORM.

Last edited by dugan; 11-30-2010 at 05:37 PM.
 
1 members found this post helpful.
Old 11-30-2010, 06:15 PM   #3
Ubunoob001
Member
 
Registered: Feb 2010
Location: New Orleans, LA
Distribution: Mint 16 RC, Elementary OS Luna, Crunchbang
Posts: 166

Original Poster
Rep: Reputation: 17
Smile

Quote:
Originally Posted by dugan View Post
Install Django. Work through the 4-part tutorial on their website. That should get you started and answer a lot of your questions.




It depends. Some websites intentionally provide machine-readable data in formats like XML. RSS feeds are an example of that. Otherwise, the keyword you need to look up is "scraping."

Python provides library functions to download data via HTTP. You'll find them in Python's library reference. You don't need to spawn wget.




Manipulating data is what programming languages are for .



You really need to learn how a relational database works. There are many books and webpages on this, and I'm sure you can find them. The short answer is that you design your MySQL database to organize the data and you write Python code to insert the data into the database. When you write Python code to pull data out of the database, you specify parameters such as ordering. For the lurkers: yes, Python code, not SQL code; Django provides an ORM.
This is fantastically helpful. I think you have answered several of my questions in the past, with great expository force, and with great patience/assistance. I wish I could "YES" to helpful this post multiple times Thanks again!

I will leave this post open a bit longer so as to gather some more data-points and then mark as solved accordingly.
 
Old 11-30-2010, 06:36 PM   #4
Ubunoob001
Member
 
Registered: Feb 2010
Location: New Orleans, LA
Distribution: Mint 16 RC, Elementary OS Luna, Crunchbang
Posts: 166

Original Poster
Rep: Reputation: 17
Dugan,
I suspect I will regret such a (public) question, and wish it not to take over this thread, but as a quick question: do you agree that Python is a good fit for me (new to programming etc). While python philosophically and logistically seems to match my needs (especially since I can do more than just web development with it), I have been hearing LOTS about the community size and code base for PHP. As a beginner, am I making a mistake going with Python?
 
Old 11-30-2010, 07:45 PM   #5
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,222

Rep: Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320
No, you're not making a mistake with Python.
 
  


Reply



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

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Getting "SIOCADDRT: No such process" when running "service network restart" cmlorentz Linux - Networking 1 11-26-2010 01:06 PM
Need solution to "failed to fork PTY" and "error creating the child process" problems Gnusboy Linux - Newbie 4 01-02-2010 07:54 AM
ns:"error when calling class OldSim"&tclsh:"invalid command+child process exits abn." shojaru Linux - Newbie 0 03-05-2009 04:23 AM
"failed to execute child process" "Input/output error" fl.bratu Fedora 4 12-15-2008 04:03 AM
Measure "CPU load" and "memory consumption" of a process DaneelGiskard Programming 3 08-30-2007 11:43 AM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 03:49 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration