Wednesday, January 23, 2008

Whoa

It sure has been a little while since I posted, hasn't it? Well, I've gone through a lot in that little period. I had to reformat my computer, because over the years I've been messing around too much with the system files, and I've really messed things up. But now everything is better. I have most of my programs back, and I am working on getting some of the ones I haven't gotten yet (some disks are at home).

I came up with a nice little list of twenty three things to do for my website. I ranked them according to priority and difficulty. I have a four day weekend coming up in two days. I plan on getting as much of the list as possible done during those four days. I also came up with an ingenious (if I may toot my own horn) way of advertising. I'm sure no one has ever thought of doing it (yeah right). But hopefully I can generate some buzz about the site. And hopefully there will be something on the site to help generate buzz. As of yet there's nothing. But I'm working on it!

Jeez, I wish I was talented, or something.

Saturday, January 19, 2008

New site

Go check out my new site, people! I'm still working on it, though, so don't expect too much just yet.

Angry TV Robot!

Monday, January 14, 2008

Gallery

I made the gallery. It was a bitch. I got the indexes confused, and it took me a long time to straighten it out. And then I went to dinner, which means the time stamp is probably a long, long time off. I want to put captions on my pictures, but I don't know where to put them. There's no room.

Back to working on the site.

Coming along

I finished Lit 220, and am done for the day. I also got lunch with the guys. And, I've been spending the last hour and a half or so on my website, which is getting better, all the time. Did I just rip off a song, there?

Anyway, all of the layout troubles are fixed. Plus, I created a banner. And I added some javascript. When you go over the links at the top of the page, the actual banner does a rollover, adding a little descriptor about the link your are hovering over. Pretty sweet. I learned how to preload images (I never understood Javascript, but it's fairly easy now that I have a solid backing in Java) too, so the rollovers work nicely.

The homepage is done, as is the about and contact pages. Well, I need to learn some php to put a contact form on the contact page, but for now, there is a link to a fictional (though soon to be real) email address. It is somethingsomething-at-hotmail-dot-com. I don't know if that will stop the automatic spamming, but I don't really care. A good feedback form will come in the future and be nice, but until then I can live with sorting through a little spam.

The pictures page needs to go up (it's empty now, except for the header), as does the videos page (same deal). Also, I need to completely design the page for my trip pictures. That is going to be a whole different design than my portion of the site. But that comes last right now (ooh, oxymoron). And there is also a page or two that I completely forgot about, that I will have to whip up. It's a good thing my template is easily duplicated and modified.

Lastly, I'll be transferring my blogs to the site. This must be done online, though, when I actually get the site. I'll be adding them via fantastico. I think that's it. Gotta post on my other blog now.

Done... again

I redesigned my site last night, finishing just a few minutes ago this morning. Not to look different, mind you. It looks exactly the same. The trouble was that when I set my monitor in 1027-768 res, whenever the site had a vertical scrollbar, the space that took up caused it to have to scroll horizontally, too. Everything I tried to do to fix it messed something else up even more, so in the end, I chucked it, and redesigned. I am happy to say that the site is fixed. Everything works the way it should on my homepage. I still have to redo the other pages, but that shouldn't take too much doing. Too bad I have class in an hour, though.

Sunday, January 13, 2008

Done, almost

I more or less finished the template of my website. And good news, too! The domain name I want is open! How in the hell does that happen? I can get it in a dot com, and even a dot net, too! Exclamation point! I just hope the both of them stay open until I can get my space. Considering that I almost have a finished site, that should happen in a couple of months.

I'm excited.

!

Ugh

Internet Explorer now officially licks balls in my opinion. I redid the template of my website, and I think it looks very nice. After a lot of research, trial and error, I made a CSS only rounded rectangle for the main posts on my main page. However, as nice as the site now looks, Internet Explorer found a way to fuck it up.

It won't display my rounded corners nicely. It blows them up to where the jags are thrown in your face. Every other browser I have tested it on (Firefox, Opera, and yes, unfortunately, Safari) displays the page perfectly, the only differences being some font stuff, which I can live with. But IE7 (and 6) just piss me off.

I'm either going to cut IE out of my site design, or just put in a little code to give it a different stylesheet. Whatever.

Yays

I have successfully moved back into my dorm room. Good thing I'm a guy, or I would have had a lot more stuff (moving my sister around was a bitch). Well, like I said, I created a site template, and I am going to work on it more a little today. I still don't know my dinner schedule here yet, since we now all have different classes, so I don't know when I am going to go eat and stuff.

Later, peoples.

Basic website template

Well, I worked diligently for several hours, and came up with a workable website template. It is, without a doubt, the simplest, ugliest template you could ever imagine, but I guess that just leaves me room to go up, right?

All it is is the title, the menu bar, two boxes side by side (one larger, for posts, the other smaller for updates), and a copyright bar on the bottom (well, under the two boxes). The background now is black, and the boxes are gray. White text, and orange links complete the picture. It is terrible. But I'm working on it. I'll make pictures and stuff to put in there. The good thing is that the thing is centered, and 1000 pixels wide. So even with a scroll bar, the entire site fits nicely within a 1024X768 resolution.

Right now the thing only uses HTML and CSS. Really, that's all I know. Anything I cannot do with the two of them, I'll do with Javascript (Java has gotten me somewhat more used to it) by looking up the code.

As far as this site's version, I'd say the version number is 0.05. That's right, it's that early and terrible a version.

Eh, tired now. More work on it tomorrow. After coming up with some (at least ten) characters for my novel.

Saturday, January 12, 2008

I wish I were more creative

I have no problem with the technical aspect of making a website. Give me a layout, and I will make it. The problem is that I am a technical person by nature. Creativity, in the artistic sense, is difficult for me. I can write well, and I can be very funny, but those have nothing to do with visual art. Website design is all about visual art. The one thing that has plagued me with website design is the layout. I always have trouble with it. Hm, I'll have to give this website some good thought.

Website

In a couple of months I'll be uprooting and moving to a real website. I am finally going to buy some space, and make a real site for myself. Look forward to that!

Friday, January 11, 2008

Hm

I am really surprised I don't already have more problems than I do. Why?

My mother gets home. I ask her if there's anything for dinner. She says not really. I say alright. Then my father gets home. My mother immediately uses my inquiry as an avenue of attack on my father, prompting him to get mad at both her and me. Then my mom acts as though I was begging for food or something, and they start complaining to me about how they have no money.

What the fuck!?

I just ignored them. If I reacted with even the slightest bit of hostility, the entire evening would have turned into a shout match. I hate them so much. Thank god I get to go back to my dorm on Sunday. I can't stand them.

I Am...

...One lazy motherfucker. So, my video tutorial will not have my voice now. It will just have some text.

Thursday, January 10, 2008

No Joy

If you're as much of a nerd as I am, you'll understand the title. Anyway, no joy on the tutorial today. The program is turning out to be pretty tricky, with all the bells and whistles I am adding. I am having trouble with the file IO right now, more specifically my file not showing up even after I have saved it. Well, that's a problem for later today, I suppose. I'll just shift that to last, after I get everything else done. So, it's menu bar, help files, and then file IO. Those should be more or less the last three things I have to do.

Wednesday, January 9, 2008

Basically

So, I have the basics done. You can start the game, pick a difficulty level, and guess until you get it correct. I have a lot left to do though. I need the menu bar, the help panel, the stats display, and the file IO with the stats. Plus, I want to count the guesses taken. That's a lot right there.

Taking a break now, and will do the hard stuff later tonight. Tomorrow morning I do the chaptering, and then after lunch I record.

Now I gotta put my laundry in the dryer.

Well on the way

I did indeed decide to go with the null layout, seeing as how the window does not change size. In my game there are three panels, the start, game, and help panels. I have finished, and added interactivity to the start panel. I am currently working on the game panel, which is the hardest. The help panel will be the easiest, just being some text and a go back button.

After I am done with the basic game, I will systematically add the more complicated stuff.

Layout Issues

I am having layout issues with the program. Despite my insistence that I love the BorderLayout, it can suck it at the moment. I do hate the way it fucks up the sizes I want to give my components. I decided to go null, and make my window not resize able. So, I guess for a game like it is, there's no real reason to make it resize able. It should be done tonight, as long as I do not get to lazy, and the videos will be made tomorrow.

Tired

Me am soooooo tired right now. I wanted to sleep more but fucking Verizon called with a message about how fios is my personal savior and I should accept Him. Anyhoo, I learned today that even if you shower, if you don't use bodywash, you're gonna smell weird afterwards. But I'm not leaving the house, and I need to save what little I have left for my glorious return to college.

No tutorial today. Tomorrow I will record it. Today will be spent (later, of course) making the program. It is going to be fairly complicated. It's also going to be cumulative, so I'm going to start from scratch. I'll be teaching everything from basic swing stuff, to listeners, even menubars, and also file IO, for saving win/loss statistics for certain players. A little much for a simple HiLo game, but that's not the point. Anyway, I'll probably do this in a series of ten to fifteen minute tutorials. I don't know how many yet, but we'll see where it goes. First I need to write the program. Then I need to insert chapters (like in a DVD) at important parts where the separate lessons are.

Right now I'm also having a weird thing where I have no idea what I want to do. I am getting strong urges to: write a novel, right here and now; draw a comic; do this tutorial from scratch; make the program and then do the tutorial; get some food; watch a movie; a couple other things.

It's very confusing in my head. But for now, seeing as how I just woke up, I think I'll settle for a little food. Thank god I finished reading a webcomic I found; that would have taken up my time for another while longer.

Later, peoples. Oh, also, I will be changing the name of this site. While I do have plans to one day finish my Pokemon: Java game, it will not be anytime soon, and I want to have a more truthful name for my blog. When I think of something, I'll tells y'all. Later, peoples.

Tuesday, January 8, 2008

Sorry, Folks

I started to make a tutorial today, but ran into a little trouble. You see, I was going to make the HiLo game, a simple game that is well suited to a tutorial, but I just hopped into it without thinking. Programming a game from scratch when under the pressure of getting it right the first time is not the way to go. So I believe I am going to program the game first, and then add increasing levels of difficulty to make the programming interesting. Then I will break it down into several ten or fifteen minute tutorials, instead of one huge file. So, look for it before the end of this week (cus if I don't do it by then, I'm not gonna do it at all [well, in text, yes, or maybe as a video with overlaid text instead of talking]).

Later.

Monday, January 7, 2008

Next Tutorial

So, here's my thoughts for the next tutorial, which I shall be doing tomorrow (Tuesday).

This tutorial will add some functionality to your swing. I'm talking actionlisteners, mouselisteners, and keyboardlisteners. Hell, I might even start to put together an actual program that does something interesting. Or... just something. Ah, I'll make a Hi-Lo game. You've all played Hi-Lo.

Anyway, I found a better compression format for my videos, that makes them a hell of a lot smaller. So I can take full-screen videos. They should, even with audio, take less than 100 megs at full size. I'll scale them to half size and quarter size as well. I'll upload them to a free video site, and link to them the blog. That way you can link to them. I will, of course, put a much smaller version here on the blog, if you don't want to download the video.

Second Tutorial!

Here it is, the second tutorial. This is a video tutorial, and I think it went rather well. Now, I'm not a public speaker, and I didn't have a set script or set of events, so I sound like a dumbass, but whatever. What I really hate was holding the camera too close to my mouth, and you can hear me breathing sort of.

Oh, also, I just now finished gluing the audio to the video, and I found that it expanded my oddly size video window to vga resolution. But, it's alright. Just ignore it. And now blogspot is fucking around with the resolution. Dammit.









Oh, and The Bernie Mac Show annoys me, especially when they have a religious episode. Why brainwash people further with religion's lies?

Sunday, January 6, 2008

Tomorrow is First Video Tutorial

Like the title says, tomorrow I will do my first video tutorial. I'll have the house to myself, and it will be nice and easy. I am busy with another writing project right now, private stuff of course, but I'll take a break to do the tutorial.

Video!

So, after three minutes of google, I found a screen recorder I've never heard of before, and it works satisfactorily. I just have to record my voice using my camera's record function (my microphone was... somehow destroyed a long time ago) while making the tutorial, and then add the soundtrack to the video in post. Then I can put it on a page, and presto, no more typing for me, and you can see what the code does without having to first type it yourself.

I'ma gonna do it when my parents are not here, since they'll think I'm crazy and talking to myself if I don't.

As Always

As always, work has left me somewhat tired, and frustrated. I drank 48 ounces of coffee, which I learned has little to no effect on me (apparently it's genetics). I did get to eat some lunch afterwards, and now I am dead tired. I only slept for four hours, give or take, last night. Like I said, the coffee had no lasting effect, so I'm out of several hours of sleep (going from 15 to 4 in one night is not pleasant). That's all I want to do right now, but my mind is just a little too active to let me doze off completely. I have the sudden urge to do something constructive. I just don't know what yet.

I will add a link to the tutorial on the side of my page, on top of the video link that is there. The next tutorial will come soon. I think there's supposed to be some basic color stuff, as well as basic components. And also more advanced layout techniques. That should be interesting. I am investigating the possibility of doing a video tutorial, so I don't have to type so much.

Oh well, actually, I guess I don't have a decent screen capture program for video, so I'll have to stick to the text tutorials. But I'll include plenty of screenshots and stuff.

Saturday, January 5, 2008

Tutorial Number One

Alright, time for my first tutorial. It is on how to set up a swing window, to program all your shit in (this tutorial is also for kids. Parents, they'll hear the word shit somewhere, so it might as well be from me). I will tell you how to mess around with it, too. I'll give two or three examples of layouts you can use, and the advantages and disadvantages of each.

All code is written in NetBeans 3.5.1 (Yeah, that's oldschool, but I love it).

Okay, so welcome to the wonderful world of swing (well... not wonderful, but extra credit, yeah). First thing is first. I want ya to set up a new Java main class thingy-ma-jingy. I will call mine tutorialOne. In my IDE, it looks like this:

/*
* tutorialOne.java
*
* Created on January 5, 2008, 11:32 PM
*/

/**
*
* @author Sean Williams
*/


public class tutorialOne {

public tutorialOne()
{
}

public static void main(String[] args)
{
}
}


As you can see, there's the main method, and a line that reads public tutorialOne(). This is where you add stuff to your window. Now, I will create the basic window. All that will show up is the three buttons (min, max, close), because I will have only created a window, not given it size. So, here's the code, and I will explain it.

/*
* tutorialOne.java
*
* Created on January 5, 2008, 11:32 PM
*/

/**
*
* @author Sean Williams
*/
import javax.swing.*;

public class tutorialOne extends JFrame
{

public tutorialOne()
{
}

public static void main(String[] args)
{
tutorialOne window = new tutorialOne();
window.setVisible(true);
}
}


Alright, as you can see, there are a couple of changes here. I have added the import javax.swing.*; This gives the program access to the swing commands without doing a lot of typing (as long as you're not just starting out programming, I'm sure you've imported packages). So, move down to the line that reads "public class tutorialOne extends JFrame." I have added the extends JFrame. This means that when you create the swing window, you refer to tutorialOne, but the program knows that you really mean a JFrame, so it treats tutorialOne like a JFrame, which is what you want.

The largest change is these two lines (yes, that was grammatically correct):

tutorialOne window = new tutorialOne();
window.setVisible(true);

Like I said, tutorialOne, because JFrame is extended, is treated as a JFrame. You create one called window. Next, you set it to be visible. I don't know why it must be done here, and not later. Java is weird.

Now! On to messing with the window. If you run your program now, you'll see this:



You may notice that tiny little bank of buttons up in the upper left corner. That is precisely what I told you will happen. There are no arguments changing things up. Well, let's change that.

What I am going to do is change the size of the window. I will make it... oh, I don't know, maybe 500 by 500 pixels. Also, I'll move the window to the center of the screen. Next, I'll add a variable to decide whether the window is resize able or not. And lastly, I'll add a fun little thing to make sure the program stops using resources when you quit. Here's the code:

/*
* tutorialOne.java
*
* Created on January 5, 2008, 11:32 PM
*/

/**
*
* @author Sean Williams
*/
import javax.swing.*;

public class tutorialOne extends JFrame
{

private boolean isResizeable = false;

public tutorialOne()
{
setSize(500, 500);
setLocationRelativeTo(null);
setResizable(isResizeable);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

public static void main(String[] args)
{
tutorialOne window = new tutorialOne();
window.setVisible(true);
}
}


So, most notable is the several lines I have added. SetSize(500, 500) is pretty self explanatory. It is setting the size using an X and a Y measurement. SetLocationRelativeTo(null) means you are setting the location of the window relative to another component, in this case, a null value. That sticks the window right in the center of the screen. This is an improvement over how I used to do it, which involved getting the screen size, and taking half of that minus half of the X value for the window. This is much easier.

You should notice the line that reads "private boolean isResizable = false." I can't remember exactly what the private does (let's face it, I'm not a good programmer), but stick it there. This is a global variable, and can be used anywhere in this class, and can also be reset anywhere in this class. You can see where I already use it to say that the setResizable variable is false, meaning you cannot drag the window smaller or larger. You can set the boolean to true, which means you can do resize it.

Lastly, you see where it says setDefaultCloseOperation. That, just like it says, sets the default close operation. When you close the window, this tells the program what to do. In my case, it exits on close, closing all running processes and really ending the program.

So, what you learned is how to set the size, location, if it's resize able or not, and how to properly end the program. Keep in mind that unlike the setVisible command, these are inside the tutorialOne() method, so they don't need to be called using window.whatever. They can just be typed, and Java does the rest.

My next picture shows you what you get when you listen to me:



If you didn't listen to me, you get something like this:



Now, I add the contentPane. This is the layer of the window you draw stuff on. You reference the contentPane when adding components to the table.

/*
* tutorialOne.java
*
* Created on January 5, 2008, 11:32 PM
*/

/**
*
* @author Sean Williams
*/
import javax.swing.*;
import java.awt.*;

public class tutorialOne extends JFrame
{

private boolean isResizeable = false;

public tutorialOne()
{
Container contentPane = getContentPane();

setSize(500, 500);
setLocationRelativeTo(null);
setResizable(isResizeable);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

public static void main(String[] args)
{
tutorialOne window = new tutorialOne();
window.setVisible(true);
}
}


See the line where I add the contentPane. Also note that I had to import another package up top. The awt is the high level GUI package, not like it's little bitch called swing.

So now... what other false promises did I make? Oh yeah, layouts. That's the last thing I'm doing today. There are two different... no, four different layouts I'll show you. They are Flow, Border, Grid, and Null.

Adding a layout is done by referencing the contentPane. So, the four I'll do here are, in order, contentPane.setLayout(null), contentPane.setLayout(new FlowLayout()), contentPane.setLayout(new BorderLayout()), and contentPane.setLayout(new GridLayout(X, Y)).

I'll do null first, since it is easiest to explain. It is exactly what it sounds like. There is no layout. That means you have to explain explicitly where everything goes, either through setting the location, or a bounding box, which is pretty annoying. This is definitely not recommended, as when you resize, none of your components shift to accommodate. You get a retarded window with a lot of free space. That's why real layouts are used, since Java automatically moves the components to fit the new window while conforming to the layout.

Flow layout is simple. You toss in some components, and Java throws them around wherever the first available spot is. It shrinks the stuff to fit the space (though I do not think it will expand most items). This is a good layout if you just don't give a shit.

Border layout is my favorite. This splits the screen into five areas. They are North, South, East, West, and Center. Components in the North and South slots will expand left and right to fit their spots. East and West will fill up and down. Center expands in all directions. YOu must specify which region you are adding a component to. That will look something like: contentPane.add(whatever, BorderLayout.CENTER). Replace center with whatever you want.

Lastly is the Grid layout, not may favorite, but useful in some cases. You basically create a grid, by giving X and Y measurements in the creation of the layout, and add compnents. These components are added to the grid in the order they are declared. You can also add a blank spot, or skipping a grid space, by adding simply: contentPane.add(new JLabel("")); And there you have it.


Well, it's late (early, actually), and I have work tomorrow. This is something of a half-assed, half finished tutorial, but it's the best you'll get out of me in my fatigued state. Next, I'll show you guys some color, as well as some basic components to add. I'll also get a little more into the layouts, including pictures of the layouts in action. Till then, don't bother me.

Im joking of course, I won't get that into it. Don't bother me.

Alright

Tomorrow, I swear to have a tutorial up and running. First, I will cover the swing basics. That means setting up a window, the size, position, and different ways of manipulating it. It also includes some basic layout structures, and how to add stuff in them. Look for that tomorrow, at some point after work (I'll be home about 1 or 2 pm).

Friday, January 4, 2008

Finally

I finally get a chance to hang out with my friends tomorrow. I get to do that instead of going to get my permit. Whatever. I like this better.

I also cleared out some of the Facebook groups I didn't like anymore. Then I filled those spots with Resident Evil groups.

I want to write some tonight. It's a good way to channel frustration.

Wanna Sleep

So... quickly, before I retire for the night, I guess I just want to vent (who was it that I was making fun of for that word? Was it Travis? Sorry, man). Of all of the things bothering me in life, I think one of the top ten is religion. I just want to get some stuff off my chest, in a venue where no one is likely to read it.

There is no god. Religion was merely a way to gain power and control, and later money, which is closely associated with power. Everything in the universe can be explained scientifically. It is just a matter of whether or not that scientific explanation has been discovered yet.

For an example of that, here is this: What about the big bang theory? What sparked the bang? Well, we don't know. Oh, then it must have been god. Well, many years ago, there was a similar problem. What makes the sun rise and set? Oh, well, I don't know. Ah, so then it must be god. Oh wait, now I know- the sun rises and sets because our planet spins around. Oh, that's right. Something that was believed to have been the work of a god was explained scientifically once the explanation was found! So that means when we find the damn explanation for the big bang theory, we're going to rub in your damned religious faces, openly looking smug and happy, and inwardly laughing and cursing you out.

Well, this post bores me already. To sum it up, religion has done nothing- I repeat, nothing, but stunt our growth as a species, as a civilization, and is generally a waste of time. I am glad more and more people are atheist, because at some point we will all be atheist, and then we'll get some shit done.

Another reason I will be alone all my life is that aside from refusing to date a girl who smokes, drinks, or does drugs, I will NOT date a girl who is religious in even the smallest sense. No agnostics, either. There is no higher power. Atheist, or hit the road.

Now, personally, I am a little less tactful than I should be with this issue. That is why I do not openly discuss this topic. However, I will show you some of my tactless responses. First off, I would gladly kill and religious person, simply for the sake that they are religious (save Buddhists, and my close friends). I would love nothing better than to wipe religion off the face of the planet. And if that meant reducing the population down to a few hundred thousand, than more power to it, because this planet is overcrowded as it is.

I hate religion. It raped humanity. It raped free will, it raped (in some religions) women's rights, and it is a terrible thing.

Lastly, I would love nothing more than to be there as a devoutly religious person dies, so I can see their face as they realize there's no heaven, no hell, no afterlife at all. I want to see the realization on their face as they see that they have wasted their lives. I want their last seconds to be filled with my roaring laughter as I think about their wasted life.

No one understands the way my brain works. The closest I can come to explaining it is saying that the universe is a giant computer, calculating itself in real time. We are values in those calculations. That is what I base stuff on.

Oh, and though it doesn't necessarily have anything to do with religion, I would like to state that human life does indeed have a value. Not a monetary value, but a value nonetheless. You know, like X has a value of 5, or something like that.

There, a little ranting done for the day. If I have offended you, good. I hope you die a horrible death. Oh, and I get off on making fun of you people, and turning your arguments back around on your sorry asses. So go nuts.

Conan is my hero

So.... no updates in a while, eh? Well, don't expect much to change. In just over a week I am going to be going to college, to start a six class semester. That's gonna be hard work. Also, I will be reading again (my book sits here, unfinished). And lastly, I am getting the urge to take the epic fantasies in my head, and transcribe them, put them in my computer, on paper. In my entire life, I have never had such an urge to write a novel, and, as a wannabe author, that is not an easy thing to say. As usual, I will be free writing this one, but I will be using an old idea, something I came up with a little while ago. I'ma gonna converse with my writing inclined friends, and see what I can come up with. It is something I need to fill up the hole caused by my inability to create a decent game, or draw a decent comic (New ChatterBox [reduced panel count] coming at some point).

Lastly, I love Conan O'Brien. His Strike Beard is awesome, and since I had already not shaved for some time, I am declaring my own facial hair a sympathetic Strike Beard.

Tuesday, January 1, 2008

HNY

Happy New Year, motherfuckers. 2008 Will be just as lonely and shitty for me as 2007, and 2006, and 2005, etc. I look forward to nothing happening at all.

I hate all this crap.

Happy new year, assholes, you're all another year closer to death.