Classic Punk 3

I've found some more videos for some of the songs I have on my Classic Punk playlist. Enjoy.

Surf Punks - My Wave - man I love this band. If you can get a hold of the album, "My Beach", do it.

Johnny Thunders - You Can't Put Your Arms Around a Memory - Johnny has a lot of great songs, but this is a classic.

Bad Religion - You - back when I used to flatland bmx freestyle I had a routine for competitions set to this song. Brings back memories.

Buzzcocks - Ever Fallen in Love (With Someone You Shouldn't) - it was a sad day when I heard this song playing in a commercial and knew it was now exposed to the masses.

Social Distortion - Another State of Mind - I love this band, every song of there's kicks ass, kind of hard to pick a favorite, but this definitely ranks up there.

The Damned - New Rose - this song fuckin' rocks.

Bad Brains - I Against I - I still remember seeing them my freshman year of university in Munich, Germany. Got to hang out with HR and the band afterward.

Suicidal Tendencies - Institutionalized - many an afternoon was spent skateboarding on the local basketball court to this tape.
|

Sunday Alcohol Sales

I see that Sunday alcohol sales has come back up in the news lately. This time it's because some minor league baseball team is in Gwinett county, and they want to allow sales of alcohol at the stadium on Sundays. For those of you who don't know, Georgia doesn't allow the sale of alcohol on Sundays; unless you go to a restaurant. I can go buy cigarettes, lottery tickets and stop off at the adult video/bookstore on Sunday, but no purchasing of wine or beer. It's a religious thing. For some reason there's this whole mixture of church and state down here. It's a stupid law, especially in modern day USA where you have people who either don't believe in God and religion, like myself, or you have people of religions that have the holy day on a day other than Sunday. People down here want to allow each county to vote on it, but our Governor, Sonny Purdue, won't allow it. This is the same idiot that held a prayer service for rain because of the major drought we are having in the South. Of course they scheduled the prayer service for a day where rain was in the forecast, so it looks like prayer actually does something. If prayer were real the rain would have formed over the south, and not come down in the traditional storm front that moves down from the north, but you can't talk to these people. Anytime the discussion of alcohol sales on Sunday comes up the bible thumpers say it's all about time management. I should just buy enough wine or beer before Sunday so I'll have some around. I never had to deal with this growing up, because even in the south you can purchase alcohol on Sundays on a military base. I doubt we will ever get a chance to vote on it, but it would be interesting to see what happens if we could. I would think it's more money for the state, seeing as they're giving up an entire days worth of sales tax on those sales. People who live on the border of other states head over there on Sundays, giving their money to that state.
|

Ruby on Rails Project - To Do List #4

Well, I sure do let a lot of time go by between these posts. For a simple Rails project that will take around an hour or so to code, it's taken over a month to write the posts about it.

When I last left off we had a browser interface that would display a list of Projects, and if you clicked on one of those Projects you would be presented with a page displaying a list of Tasks associated with that Project. This is a great start to a Project Tracking application, but it's missing a big piece...an interface for allowing the user to enter the Projects and Tasks through the web browser. Everything we've added so far has happened from the command line. So, that is what I'll cover this time, adding a user interface for entering this information.

The page used for displaying the Projects is located at /app/views/projects/index.rhtml. The code is pretty simple


<h1>Projects</h1>
<ul>
    <% @projects.each do |project| %>
        <li><%= link_to project.name, :action => 'details', :id => project.id %></li>
    <% end %>
</ul>


We'll add the ability to add new Project to this same page, it will be at the top of the page. The existing projects will be listed below it.

First thing we'll do is update index.rhtml with the following code


<!-- Form for adding a new Project -->
<% form_tag :action => :new do %>
    Project Name: <%= text_field :project, :name %>
    <%= submit_tag 'Add new project' %>
<% end %>


This provides us with a text box and a button wrapped in a form that will submit to the 'new' method in the Project controller. The form should look like this if you view it in the browser at http://localhost:3000/projects/

project_from

Now we need to add the 'new' method to the Project Controller. This is located in /app/controller/projects_controller.rb. Add the following code


def new
  @newproject = params[:project]
  Project.new(@newproject).save
  redirect_to :action => :index
end


This code is pretty simple. When the user submits a new Project name, it comes over in the params object as a hash, with ':project' as the hash name, and ':name' as a key with the value the key corresponds to as the value they entered. Then we call the Save method and redirect back to index, which will redisplay the page with the new Project showing in the list.

This works great, you can add new Projects all day long, but there is an issue. We should have some sort of validation. We should validate that the user actually enters a value before clicking the button to create a project. We should also make sure the Project name they enter is unique. In most instances this would require a lot of coding on the developers part, but not in Rails. This is all taken care of. There are some pre-built validations, we'll use the validates_presence_of and validates_uniqueness_of validations, to check that the value has a length greater than 0 and also that the value is not already present in the database. We just need to add the validation calls to the Project model. The model is located at /app/models/project.rb, update it to look like this


class Project < ActiveRecord::Base
  has_many :tasks

  validates_presence_of :name
  validates_uniqueness_of :name
end


Now if you try to add a blank Project or one with a name already taken, nothing happens. Once we actually work on a layout to make this site presentable we can display error messages, but for the time being not having it save bad data is good enough.

Now we have to repeat the steps above to all the user the ability to add new Tasks to the project. Update the form that displays the tasks, which is located in /app/views/projects/details.rhtml. Add the following code after the <h1> tags


<% form_tag :action => :addtask, :id => @project.id do %>
    Task Name: <%= text_field :task, :name %><br />
    Due Date: <%= date_select('range', 'due_date', : order => [:month, :day, :year]) %><br />
    <%= submit_tag 'Add new task' %>
<% end %>


This gives us a form that looks like this

task_form

Next we add the 'addtask' method to the Project Controller, which will create a new instance of a Task with the information entered by the user, find the Project that the task is going to be associated with, and adds the task to the tasks array of the Project, then it saves the project.


def addtask
  #create task
  @task = Task.new(params[:task])
  @task.is_complete = false

  #add to project
  @project = Project.find_by_id(params[:id])
  @project.tasks << @task
  @project.save

  redirect_to :action => 'details', :id => params[:id]
end


Add the following to the Task model, and you are done.


validates_presence_of :name


We'll allow duplicate task names, but the task does need a name entered.

That's all for this time. Next time we will allow updating and deleting of tasks. Also, we'll need to show overdue tasks.
|

AppFresh

If you have a Mac I recommend an application called "AppFresh". It's a pretty simple, but very helpful application. AppFresh scans your computer to find all the applications you have installed. Then it checks those applications against various web sites to see if the version on your computer is up to date. If it's not up to date it will provide information about the update and allow you to download and install from within the application. With the recent upgrade to Leopard there are a lot of applications that are putting out new releases to provide compatibility. It's a free application I highly recommend.
|

Apple TV "Take Two"

Earlier this year, at the MacWorld conference, Steve Jobs announced that the first go at Apple TV did not produce what they wanted, so they were giving it another go. Steve dubbed it Apple TV - Take Two. The update for existing Apple TV owners was delivered today. Here's what is new on the Apple TV

1. Movie Rentals
2. HD Movies
3. Improved User Interface
4. No need for a computer
5. Dolby 5.1 Surround Sound

Now, anyone who keeps up with this blog knows that I don't subscribe to cable, nor do I have a tuner of any sort hooked up to my TV to allow for me to pick up basic cable channels. I just don't watch enough TV to justify the cost. So, when Apple TV was first announced; a device that hooked up to your TV and allowed you to purchase just the shows you wanted and allow you to watch them when you want, I plopped down my money the first day. This is the al-a-cart solution I was looking for. The TV shows I was interested in were available on the iTunes Store, so I could subscribe, and let my computer and Apple TV take care of the rest. The iTunes store keeps track of when a new episode is available, the new episode is downloaded, and synced to the the Apple TV. It's waiting there for when I have the time to sit down and watch it.

The big change on the new update is Apple has removed the computer from the whole equation. All you need now to enjoy an Apple TV is the Apple TV device, an internet connection, and a Hi Definition television. If you do have a computer you can still download to your computer first and have it sync; but, you now have the option to peruse the movies/TV/music sections from the comfort of your living room on your big screen TV, find something you like, purchase it at that time, and start watching/listening to it. It will sync back over to your computer if you have one.

On the earlier version of Apple TV you had to purchase a movie to watch it, usually costing around $10 - $15, depending on if it was a newer movie. Now you have the option to rent the movie, for between $2.99 and $4.99, depending on if it's a newer film and also if you want the HD version. If you rent a movie you have 30 days to watch it. Once you start watching it you have 24 hours to watch the entire movie as many times as you like.

While I don't think Apple TV is for everyone, especially if you already have cable with on demand and a DVR; this is a nice update and it makes a great product for people like myself.
|

Finished Super Mario Galaxy

I finished Super Mario Galaxy this evening. I've been playing it off-and-on for a few months now. I definitely give this game a 10 out of 10. It's amazing. I've always been a fan of Mario, back from the original NES up through this game. There are a lot of challenging parts to this game, and I'm sure I didn't find all of the secrets, but I'm glad to be finished.

I'm currently playing Resident Evil: Umbrella Chronicles too. So far it's been great, but some parts of almost too hard, and can get very frustrating. Luckily I've always been someone that has a lot of patience, so it doesn't bother me too much.

Aside from those two games I've been playing the occasional Guitar Hero III or Tiger Woods Golf game. I'm actually thinking of cutting down on my video game playing. While I do enjoy sitting back and playing a game, all that time I spend on games can be used to do other things. I need to budget my time better.

Once I finish Resident Evil I picked up that Tomb Raider Anniversary game. I've been a fan of Tomb Raider since the first game, which is what this game is, just updated with better graphics and some extras thrown in for the Wii.

If you have a Wii and enjoy Mario, pick up Super Mario Galaxy. Takes a little while to get used to the control scheme, but it's worth the time.
|

Classic Punk 2

In an earlier post I listed some of the punk songs I have in my Classic Punk playlist. These are songs that I enjoy a lot, so I wanted to share my list, to maybe expose people to new music.

Ill Repute - Clean Cut American Kid

Circle Jerks - Wild In The Streets

The Nuns - Suicide Child

Richard Hell & The Voidoids - Blank Generation

Sham 69 - Borstal Breakout

The Misfits - Where Eagles Dare - How can you not love a song with the chorus "I ain't no goddamn son-of-a-bitch"

Reagan Youth - USA - A USA for Anarchy!!

Minor Threat - 12XU - the only thing wrong with this song is it's too long Happy

7 Seconds - Young 'Till I Die - I always considered this my life mantra

The Misfits - Hybrid Moments - man this is a great song

Black Flag - TV Party - We've got nothing better to do, than watch TV and have a couple of brews.

Toy Dolls - Nellie The Elephant - probably one of the few punk videos with synchronized dancing.

The Clash - Garageland

Black Flag - Wasted
|

Microsoft and Yahoo!

I see that Microsoft has put in a bid of 44 Billion to purchase Yahoo! I have a couple issues with this, and it's not all about my dislike for Microsoft. It's more to do with the fact that I like how Yahoo! supports developing sites that work across platforms and browsers. Yahoo! Mail works nicely, although I did just ditch my pro account with Yahoo! because I have been in the process of switching over to GMail. Yahoo has some great engineers and developers that have developed their YUI (Yahoo User Interface) tools. These tools allow web developers to create sites that have a rich interface, without having to come up with all the javascript. I also like Flickr, which is where I store my photographs. It has a great interface, and uses Flash and Flex a lot where they really need the slick interface. They are also big on using Free BSD and PHP. If Microsoft purchases them I have the feeling that a lot of this will change, which would suck. When Microsoft bought Hotmail a lot of the users at the time left, because like most products they buy, it gets worse afterward. I can already see all the Flash being replaced with Silverlight, and sites suddenly working better on Windows with Internet Explorer for all the extra goodies. I hope I am wrong that all this would occur, but this is Microsoft we're talking about, so it's not very far fetched.
|