Converting caffeine to code, shooting pics, and cruising the roads of life.

Archive for the ‘Web Development’ Category

Happy Holidays!

Thursday, December 27th, 2007

Hey guys! I know this is a bit late, but I would like wish all of my remaining readers a happy holiday season. I know I’ve been a bit busy lately, but I’m going to try to keep this site updated again.

So let me give you a run down of just what has been going on. My last post (before the iPhone how-to) was February 20th of last year. A lot has happened since then. My absence initially started with a teacher at school drafting me into the Future Business Leaders of America (FBLA). I was to compete in the Networking Concepts category. It was a 100 question multiple choice test on various networking topics. I took 1st place at both regional and state levels, so I qualified for the trip to compete at the FBLA-PBL nationals in Chicago last summer. I went. I had no chance, being more into coding than networking, but I guess I’m not half bad at it. :) From the people I talked to that competed against me, every single one of them had some form of networking certification.

While I was in Chicago, I snuck off from the group and took a taxi to the Apple store on Michigan Avenue a.k.a. the Magnificent Mile. I got there right as the store opened, so I walked in and bought my iPhone in under 5 minutes. (The big wtf here is that the Cingular store had a line around the block…) Once purchased, I had a 3-4 mile hike back to the hotel. It was pretty fun. :)

So the rest of my summer break after I got back from Chicago was spent on IRC trying to hack the iPhone. Yep, I knew most of the hackers and even was one of the first to start a serial dock for the thing, I just suck at soldering. I didn’t get to do much before I had to do summer assignments for school. It was fun while it lasted though. I got to meet many cool people, including Captain Crunch.

Now, we’re getting to the exciting stuff. A few weeks after school started I got offered a job at a startup in Silicon Valley doing PHP coding. The startup is called Qubescape. We’ll have a sweet product out shortly, that’s all I’m going to say. It’s been awesome so far. I work with some really good people.

That brings us up to what’s going on currently. Currently, I have very little time thanks to school. AP US History and AP Physics B are keeping me slammed with work. My AP US History teacher has an insane passing record and intends to keep it that way — which I’m cool with because I enjoy the class. On the other hand, my AP Physics teacher just can’t teach. He’s a good guy, he understands it, but he *cannot* explain it; so, I’m left to figuring it out on my own.

Time is going to get even more rare as I am involved in FBLA once again this year. I will be the first from my school to compete in the Internet Application Programming category. It looks incredibly easy. The project requires a website to track class averages and GPA with simple user authentication and a presentation explaining areas of your code the judges are interested in.

Anyone else that read this blog heard of FBLA? It’s nationwide, but many people don’t seem to know about it.

The future and OpenID

Tuesday, February 20th, 2007

After talking to a few people in #OpenID on irc.freenode.org last night, I finally decided I was going to get OpenID working with my own custom database library. The only full featured PHP library I could find was the one produced by JanRain. It’s not that I don’t like the features in the library, but the fact that it’s a PEAR style library, so it requires a few other PEAR libs that I absolutely refuse to use due to bloat, specifically PEAR::DB.

This caused a real issue for me. Function names are extremely different, along with how queries are performed, compared to my mysqli library. Sometime last month I tried to make a PEAR-style wrapper for my class, but for some reason it failed with the library. Well, last night I found the Wordpress OpenID plugin. Knowing that WP runs it’s own MySQL class, I downloaded it and studied the wrapper. This allowed me to see what I had been doing wrong and get a system working before school started today.

Once I had it working, I wrote a simple class I call EasyOpenID. This class allows me to minimize the amount of code in JanRain’s consumer example to very few lines of code. I’ve decided I was going to release this library, so I converted it to FileStore, which is the default the library ships with, and packed it up. I am going to release it here to hopefully get some feedback. If the feedback is good, I will probably continue to expand on the class.

I will have a page up for the library later on tomorrow, but for now, download the file located here. This zip file contains the converted consumer example and my class. The class is released under the new BSD license, while the rest of the code is GPL. Please, provide me with any of your thoughts on the library. Even if you don’t use it on a real, live site, please just let me know what you thought.

Talking with the folks in #OpenID also got me invited to be on the first official OpenID podcast recording, no idea if I’ll be involved, but I’m listening. You will be able to obtain the podcast on http://idcast.org/ sometime tomorrow night or on Thursday. I hope all goes well. Hopefully this new podcast will provide a great resource for developers looking to learn and expand on OpenID.

The knack

Thursday, February 8th, 2007

There are times when people or companies make you mad, this is one of them. I was planning on beginning this post with a video from youtube called “The Knack.” It was a family guy video about computer and electronic tinkering. Well, Sony somehow feels that this 1:01 minute long clip violates their copyrights, so it has been removed in the last round of DMCA cease and desists on youtube. So, I won’t be starting this post off this way…

Last week, I got “The Knack.” It seems to bite any computer guy that comes into contact with Digital Equipment Corporation (DEC) hardware. It all started when a fellow programmer friend of mine sent me a link to a DEC Easy WebServer. This is a relabeled DEC Alpha Multia that shipped with Windows NT 4.0 Server. It included some sort of Netscape software for setting up a webserver easily. Well, I figured I would go ahead and add it to my watch list, since it was only $20 + shipping. I continued browsing and around and found a DEC VAXstation 3100 for $18 + shipping. I have been wanting a VAX for a while, so I bought it. 2 days later, I bought the DEC Easy WebServer.

So in total, I spent over $100 in a week on computer hardware that is older than me.(almost as old as me in the Multia’s case) The VAXstation came and it ended up missing the whole SCSI controller board, so I’m still looking for one of those. The Multia came today and works great, but it seems to operate in “Space heater emulation mode” all the time, I’d hate to see it under a full CPU load.

I tried installing OpenBSD/Alpha on the Multia tonight, with little luck. The installer boots and then says it can find no drives, but the hardware compatibility list clearly says the Multia is supported. So, I tried to find Debian net boot floppy images and failed. I’m currently installing FreeBSD/Alpha as I’m writing this, hopefully it works better.

Here are a few pictures of my new machines, more pictures of the Multia can be found here; more pictures of the VAXstation can be found here.

DEC Alpha - Multia EasyWebServer
DEC Alpha - Multia EasyWebServer
VAXstation 3100
VAXstation 3100

School has been crazy lately. I’ve been loaded down with homework most of the time, and on top of that I’ve been drafted by a few of the teachers at school to participate in the FBLA competitions. I’ll be competing in the single person test on computer networking. The test is a 100 question test given at a local university. I’m competing in the area my school does really bad in, so I hope I can change the tradition…

As I said above, school has been crazy lately. This has had it’s negative effects on Threadbound. When I do have time to code, I’m working on my client’s website, which I got sometime after my last post, or I’m doing coding for thunder-it.com. Today, I’ve been hit with a new block of inspiration and ideas for threadbound, so hopefully I can make some time to work on it. The stuff I came up with today is definitely new for the area I plan to implement it in.

For those of you still not quite sure about this whole Web 2.0 thing, check out the video below. It’s the best one I’ve ever seen that describes how I feel about it.

25 days after the switch to a mac and RESTful fun

Sunday, December 10th, 2006

So here it is 25 days after I made “the switch”, but not just any switch, I switched from Linux. So what are my thoughts? I’m loving it! OSX is an amazing OS, especially running on a core 2 duo. Obviously, there are some things I miss, such as complete POSIX compliance and compiles working out of the box, but I’ve been able to get everything I needed to work to actually work. I’d have to say my productivity has increased since the switch, probably due to better tools (Textmate).

Last weekend I got phpSysInfo’s Darwin support almost up-to-par with the other OS’s it supports. I still have a few things left, but I’ll be submitting them back as a patch here shortly. :)

Today, I spent most of the day working on ThreadBound when I should have been starting my huge project for school that is due on Friday. Besides setting up a bug tracker and doing the usual bug fixing, I actually added a completely new feature to ThreadBound — an MVC based REST API system. It’s actually pretty complete and shouldn’t change much from here until the site goes live, since all I do now is create new class files and methods. Right now, it only has clones of Flick’s flickr.test.echo and my own version of flickr.test.null. Of course, all of mine go by threadbound.* instead of flickr.*.

This site may go down for a few hours sometime within the next 3 days. I’m transferring the domain from enom.com to godaddy.com. Hopefully things will be fine when the transfer is done.

I’m off to bed now.

An Apple for Thanksgiving.

Wednesday, November 22nd, 2006

I would like to wish everyone that reads this blog a happy Thanksgiving. Hope you all don’t eat too much. I know I will be tomorrow…maybe even with an Apple. Yep, my new 17″ MacBook Pro finally came on Monday and today is the first day I’ve really put the time into learning how to use OS X. So far, I’m completely amazed, it’s a very nice system. I like how all the applications seem to work together for even simple tasks.

The Kenwood Apple Store was true to their word, they called me the day they came in. I ended up getting to the store around 6:30-7pm and it was packed. These things must be selling like hotcakes because I know they sold 3 of them while we were waiting on the cashier to see if they had any 2gb ram sticks in stock — which they didn’t. So I’m still 1gb of ram short until my reserved stick comes in. They do have a nice deal going right now though. You can get an HP Photosmart C3180 printer for free with your MacBook if you are buying it on a college discount. You have to pay upfront, but you get a rebate for the full price of the printer, similar to how they were running the iPod deals.

So far my experience of moving from Linux to OSX has been pretty grand, as I hinted at above. The built in wireless coupled with my new WRT45G, that I hadn’t tested the wireless on, seem to be working much better than my old setup. It’s so nice having wireless again, no cat5 cable to get tangled up in my mouse. Application-wise, I have already found a replacement for everything I used on Linux. I knew all of these before I even owned a Mac though, since I talk to/code with a few people that own a mac.

Heck, in the three days I’ve had this thing, I’ve already spent $50 in software. I bought textmate since it appears to be the best coding text editor on the planet for the mac and web 2.0 crew. I’m definitely liking it so far, but I’m on the hunt for PHP plugins now. They are a bit saturated with Ruby plugins. ;) I still need to get a legal copy of Photoshop CS2 for this box though. If only it was cheaper…

I’ve also had the joy of being able to run a lot of my favorite Linux applications on this thing. Fink is quite a nice system. I already have X11 running at startup, without that stupid xterm. I’ve modified my shell settings so everything I need to start X apps from Terminal.app is there and ready to go. I suggest all of you go out and install Xdroplets. Combined with this custom X11 setup and Xdroplets, I have a pretty standard application interface for running my old applications, such as XMMS or Konqueror for testing.

To give you some idea of how fast this laptop is, I have two benchmarks for you. While I was writing this post, I started a compile of Apache 2.0.59 to start setting up my development environment for ThreadBound. Here are the command that I ran:

$ ./configure
$ export MAKEOPTS=”-j6″
$ time make

What are the results? Astounding, considering this is a 10-20 minute compile on my old Athlon64 3200+ laptop…

real 1m37.240s
user 0m53.671s
sys 0m37.242s

The other benchmark is from when I installed Windows XP on my friend’s MacBook Pro, which is identical to the one I bought. After installing Counter-Strike: Source, we ran the video stress test. These machines averaged 114 FPS on it. This test set all of the settings on high, so we tried it. We were getting about 60-90 FPS at 1680×1050 during games. This just goes to show you the performance of this machine. Considering that people don’t know that the x1600 graphics cards they ship with are underclocked by around 45% below what ATI ships them as, due to heat. So I’m going to have to overclock them a bit and see how it does.

Here is a nice picture of my MacBook Pro:

Macbook Pro Core 2 Duo OpeningMacbook Pro Core 2 Duo Opening Hosted on Zooomr

More pictures of it can be found here.