Out of the 6 books I picked up at the library I've really only been using one: SAMS Teach Yourself PHP, MySQL and Apache. I don't have a computer to work on right now, so sadly I haven't actually been able to teach myself any of these, but I have learned alot about them and about how websites work these days.
Prior to picking up this book, I knew that PHP was used for coding webpages but didn't really know why it was special, and had heard the words MySQL and Apache tossed around but didn't know anything about them. Also, I sort of knew what a database and server were, but didn't really know much about them.
Here's what I've learned. PHP works within HTML and doesn't directly code for webpages so much as it gets the server to spit out an HTML webpage for you. It can be used to design websites, web applications, and is especially good at communicating with servers and databases. MySQL is used to setup and manage databases, which are basicaly just tables used as vehicles for information. Unlike other popular coding languages which are object oriented, PHP is procedural, so functionality with a database sort of acts as a surrogate to the role played by classes in OOP languages (I think). Apache is just the server and well, I don't know how much I can learn about that without playing with it directly.
PHP looks alot like stuff I've worked with before, so it's scary and new but not super intimidating because it still looks familiar and somewhat intuitive. I'm going to need to learn what variables and functions are already built into the program. MySQL is much scarier. I've never worked with a database before. I've manipulated information in tables using excel before, but this is way different.
Why did I abandon Ruby on Rails but get so interested in PHP and MySQL? Drupal is programmed in PHP, and I think it's the CMS I'm going to stick with. I'm anticipating needing to do at least some tweaking to get it to do what I want, so I'm definitely going to want PHP for that. PHP and MySQL interface well together, and it's likely that where I see PHP code in the files I'll want to adjust, I'll also see embedded MySQL commands.
Hopefully I'll be able to glean all the functionality I need out of Drumla without needing to code anything, but may as well learn a little anyway. But Drumla works in modules, and I really doubt what I want already exists. MySQL still scares me.
Sunday, September 14, 2008
Content Management Systems
After reading up on ruby on rails, I came to the conclusion that although Rails would probably work for me, it's just to involved. I've been playing with the internet since the early nineties, and as it's proliferated I've seen certain tools reappearing. For instance, many websites utilize very similar forum engines. Same thing with blogs. After thinking about it, it occured to me that there had to be existing tools that would allow me to create a website using a template or something. Given the popularity of open source culture I knew that somewhere out there someone had done most of the coding work for me.
It started with tag clouds. I want my website to be driven by user-generated content, and figured it might justify the use of a folksonomy might be justified, over a predetermined list of categories decided upon by me. By to manage this folksonomy I wanted to associate tag clouds with entries, but I had no idea how to code a tag cloud.
I started searching for a place that would just tell me how to make a tag cloud. I ended up learning that tag clouds are common not because the code for them has been popularized, but because tools for creating blogs have been.
Enter Wordpress. When I first learned about Wordpress and Wordpess MU, I stood up from my computer and screamed "I KNEW IT!" at the window. I knew that many websites for creating blogs existed, but Wordpress was my first exposure to a downloadable Content Management System, a software package that would help me make a community driven webpage out of the box.
The problem with Wordpress is that it's really aimed at blogs. After learning about Wordpress I rode the wave of my initial excitement and tried to figure out ways I could implement my idea with a series of blogs. Wordpress is really only designed for single or very few blogs. Wordpress MU supports multiple blogs, but I wanted my users to collaborate more than would be easy to do with Wordpress.
Through wikipedia, I learned about other CMSs. The two heavy hitters aside from Wordpress are Joomla and Drupal. All three are open-source GPL which is great for me. Joomla and Drupal are real heavy hitters. After browsing through some comparisons of the two, I think Drupal's flexibility is what I need. Next week I'm going to attend a monthly DC Drupal meetup to learn more about it.
It started with tag clouds. I want my website to be driven by user-generated content, and figured it might justify the use of a folksonomy might be justified, over a predetermined list of categories decided upon by me. By to manage this folksonomy I wanted to associate tag clouds with entries, but I had no idea how to code a tag cloud.
I started searching for a place that would just tell me how to make a tag cloud. I ended up learning that tag clouds are common not because the code for them has been popularized, but because tools for creating blogs have been.
Enter Wordpress. When I first learned about Wordpress and Wordpess MU, I stood up from my computer and screamed "I KNEW IT!" at the window. I knew that many websites for creating blogs existed, but Wordpress was my first exposure to a downloadable Content Management System, a software package that would help me make a community driven webpage out of the box.
The problem with Wordpress is that it's really aimed at blogs. After learning about Wordpress I rode the wave of my initial excitement and tried to figure out ways I could implement my idea with a series of blogs. Wordpress is really only designed for single or very few blogs. Wordpress MU supports multiple blogs, but I wanted my users to collaborate more than would be easy to do with Wordpress.
Through wikipedia, I learned about other CMSs. The two heavy hitters aside from Wordpress are Joomla and Drupal. All three are open-source GPL which is great for me. Joomla and Drupal are real heavy hitters. After browsing through some comparisons of the two, I think Drupal's flexibility is what I need. Next week I'm going to attend a monthly DC Drupal meetup to learn more about it.
The library
The first resource I tried to access was the local public library. The community I live in has a good public library system but I doubt it will satisfy my needs. Most library books are donated, so consequently books on webdesign and programming are often out of date. Still, I don't really know what to-date is right now, so it's a start.
I left my first trip to the library with a FAT stack of books. I had read about ruby on rails somewhere and thought I'd look into it for my website, so I picked up Ruby on Rails for Dummies and Rails Recipes. For the sake of exploration, I also picked up SAMS teach yourself PHP, MySQL and Apache and Teach Yourself XML. I don't really know anything about Ruby, Rails, PHP, MySQL or Apache so I really wasn't hoping to learn how to use them so much as learn who uses them and what their capabilities are. On top of all that, I'm hoping to link up to amazon in a sort of funky way so I also got Web 2.0 Mashups. Last, I also borrowed Building a Website for Dummies just because.
Did I mention I don't really have a computer right now? My PC is shot to hell and I'm not really able to practice any of the things I'm trying to learn without one, so right now I'm just trying to figure out what is out there and what would work best for me, given my capabilities and my needs.
I left my first trip to the library with a FAT stack of books. I had read about ruby on rails somewhere and thought I'd look into it for my website, so I picked up Ruby on Rails for Dummies and Rails Recipes. For the sake of exploration, I also picked up SAMS teach yourself PHP, MySQL and Apache and Teach Yourself XML. I don't really know anything about Ruby, Rails, PHP, MySQL or Apache so I really wasn't hoping to learn how to use them so much as learn who uses them and what their capabilities are. On top of all that, I'm hoping to link up to amazon in a sort of funky way so I also got Web 2.0 Mashups. Last, I also borrowed Building a Website for Dummies just because.
Did I mention I don't really have a computer right now? My PC is shot to hell and I'm not really able to practice any of the things I'm trying to learn without one, so right now I'm just trying to figure out what is out there and what would work best for me, given my capabilities and my needs.
Introduction
Almost a year ago, I started keeping a journal of sorts. It's totally free-form, not dedicated to any particular kind of entry; I even number entries instead of dating them, jsut to keep them separate. I use it to log dreams, memorable events, ideas I don't want to forget, even doodles. Every now and then, I'll have an idea for a money making scheme like an invention or a business, and into the journal it goes along with everything else.
A few weeks ago, I had an idea for a website. To the best of my knowledge, nothing quite like my idea exists on the web yet, and if I implement it properly it could become a very useful (and potentially profitable) webpage.
But I don't know dick about web design.
When I was younger I took some computer science classes. I could code reasonably well in a totally useless language called scheme, was really good with the language on TI calculators, and was even trying to teach myself C++ for awhile, but I was in middle school and overzealous and ultimately didn't really learn much.
I believe that the internet is a spectacular autodidactic resource, and through it and other sources I hope to provide myself with the tools I need to implement my webpage. Enter the n00b project. Through this blog, I hope to take you on my educational journey, sharing with you my process, frustrations and successes as I try to teach myself webdesign from scratch.
A few weeks ago, I had an idea for a website. To the best of my knowledge, nothing quite like my idea exists on the web yet, and if I implement it properly it could become a very useful (and potentially profitable) webpage.
But I don't know dick about web design.
When I was younger I took some computer science classes. I could code reasonably well in a totally useless language called scheme, was really good with the language on TI calculators, and was even trying to teach myself C++ for awhile, but I was in middle school and overzealous and ultimately didn't really learn much.
I believe that the internet is a spectacular autodidactic resource, and through it and other sources I hope to provide myself with the tools I need to implement my webpage. Enter the n00b project. Through this blog, I hope to take you on my educational journey, sharing with you my process, frustrations and successes as I try to teach myself webdesign from scratch.
Subscribe to:
Posts (Atom)