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

Archive for the ‘PHP’ 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.

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.

A bit of a test

Monday, September 25th, 2006

The past few weeks have been pretty insane. I have not only had a lot to do at school, but a lot going on too. My Counter-Strike: Source addiction is coming back too, thanks to a bunch of my friends at school and our newly formed clan. I wont’ have much time for anything the rest of the week though. Tomorrow and Wednesday I have PLAN testing, which is basically the pre-ACT test. Then I have a week to do my PSAT practice booklet and take the PSAT. Fun times ahead. :)

In other news, I would like to leak a bit of news on one of my new projects that I am co-developing with a network operator for theWyldRyde.org IRC network, DamnSmallBSD. It is a take off of the very first linux distribution I ever used, Damn Small Linux. Our goals are similar, but we are based on a completely different operating system, FreeBSD. We also have some cool ideas to keep it modular for people looking to remaster it. Keep your eyes open, the cd is bootable, we just haven’t done much work on the userland yet.

Over the past day, I also broke back into some PHP. ThreadBound officially moved a step closer to it’s main goal. Here is a little hint of a very early page:

ThreadBound - previewThreadBound – preview Hosted on Zooomr

I have also been contacted to do some more work for ThunderIT.com, so I’m very happy about that. The project I’ll be working on is very cool. Hopefully some of the cash I get from this job will help me get a new laptop.