Archive for the ‘General’ Category

Berkeley Webcasts

Tuesday, April 25th, 2006

It’s old news, yes, but I thought I might link to it anyway. Specifically, if you read Digg then you probably already know that Berkeley offers free downloadable webcasts of some of their lectures. More recently, iTunes now has all of the audio podcasts of the lectures for free download. But I prefer the video because a lot of the lectures include visuals like slides.

Isn’t it amazing how available information is these days?

What’s Goin’ On

Sunday, April 16th, 2006

So I’ve been silent for the past… how long has it been… month? About there. A lot has happened!

I’m not sure if I blogged about it, but I was really sick for about a week and a half about a month back (I think it was a month… ;-)), and that’s when the ball started to roll. I blogged earlier about the classes I took this semester and how they were pretty darn hard (foreshadowing! Note the tense!). After missing a week and a half (technically 2 and a half weeks, since I had my March break in there, too), I was pretty much screwed. Math courses generally build knowledge up a step at a time, so if you don’t understand concept A then you’ll have extreme difficulty with concept B. Let’s just say, due to my absence, my understanding of concept A was absolutely horrid :-P So I made a decision: I would drop these classes and come back next year. And that’s what I did :-) Why? Because I definitely didn’t want my last grades to be in the 50% range, that wouldn’t look to good on any application.

After about a week, I ended up talking to the principal of my school about everything. He told me, rather then going back into classes I probably didn’t really like (which is true) or need (which is also true), how about I take co-op? Wonderful idea! The co-op program basically means I get credits to work. They call it getting real-world experience. So it’s learning, but in a very real kind of way. No books, no class time. I just have to do a couple of things, like write about what I’m learning in the work place etc. My co-op job is… well, what I’m already doing (web dev)! I was certainly ready to return to classes for another year, but wow — what an opportunity, no way could I refuse.

I feel the need to explain the way things work. Because I know my situation even 10 years back would be unheard of (at least, around here). It might be unheard of elsewhere in the world, too, I’m not sure. Dropping 4 classes back in the day was like dropping out. Nowadays, the system has improved so much. Students have so many more options, hence why my decision to return for another year was acceptable. If I didn’t want to return for another year, I could have even got 4 credits through online courses, or even night school. All of these are common practices, I know people who have done both. School isn’t like a ritual any more, it’s… “open” is the word that comes to mind.

So anyway, that’s what is going on. I’m out of school right now (and no co-op until Sept.). I’m looking for work (and already found some). I’m working on getting Outershift open and ready for business, and enjoying the increasingly beautiful weather ;-)

Zend Studio

Monday, March 13th, 2006

Zend StudioI’ve started using Zend Studio for serious PHP work now. It’s a delight to work with :) The newest version, version 5, has none of the quirks and annoyances I experienced with previous versions and a slew of very useful features. For as long as I could remember, I was using basic text editors for the majority of my work and doing a lot of stuff by hand.

For example, debugging is a lot easier when you’ve got a tool that does it for you ;) No more print_r()’ing arrays to see values or die()’ing at various points to see which logic paths were taken etc. Autocompletion is useful too, saves a bunch of typing. My favorite feature is Templates where you can define a block of code with certain variable sections. You can tab through each variable and change it, or accept a default value. Look to the screenshot I attached to this post, the second foreach block is demonstrating it. I first saw this in vidcast of Visual Studio 2005 over at channel9 and craved it. This is the second usable editor that I’ve seen implement it, and the first that has implemented it flawlessly.

Anyway, I just wanted to say I finally moved to a PHP IDE. Ermau will undoubtedly say “I told you so” ;-) But version 5 is much better then the previous versions I tried and could not work with. I’m glad I decided to try it, although it did come out all the way back in November of 2005 so I’m a bit late :p

PHP5 alongside PHP4 on ASO

Monday, February 20th, 2006

ASO lets us customers use both PHP4 and PHP5 with the help of a nifty little trick that lets us run PHP5 through FastCGI while still using PHP4 through mod_php4. Very very cool!

(Wow, second blog post today! I’m on a roll! ;-))

Iced Cap

Sunday, February 19th, 2006

iced_cap.gif Well I haven’t written in a while, so I thought it was probably past time ;) It first came to mind just now when I went out for a drive to fetch myself and Iced Cap. Now, every single Canadian you talk to will know what an Iced Cap is — but for the rest of the world, I thought I’d finally show it to you (and now when you see my usertitle “Iced Cap” on forums, you know what it means). I took a picture with my cell phone so excuse the not-so-great quality. The picture itself doesn’t explain much, so let me tell you what it is: It’s a cold cappuccino that tastes like the best thing in the world. :-D

So what have I been up to… Not too much :-) I’ve said it before and I’ll say it again, I lead a dreadfully boring life for the most part. At least, boring to write about (I hardly think the ups and downs of “life” itself could ever bear a dull moment). But I’ll tell you anyway since I feel this is a personal blog, and I should at least reveal why so much time has passed since my last blog post.

First I had my end-of-semester exams during the end of January. I only had three classes, and two of which I had under my belt (the third, English, yielded a more difficult experience but not by much). But ease does not mean speed, so although I think I could have done what needed doing with my eyes closed, time was limited (explaining my absence from blogging and IRC chat etc). But after all was done, I came out with pretty good grades. My average was 89%* :-) I can’t gloat too much though, because I had 3 easy classes. But I do have to comment on my English grade. I got an 81%, even when I didn’t do half of the summative project. The summative was worth 20% of the final grade, I believe, and I didn’t do half. That’s a big chunk!

* I really don’t know how well that is elsewhere in the world. According to my American friends for example, a fail over there is <60% (here it's <50%). So perhaps 89% isn't too great where you live, but it's good over here.

Then my second semester begun on Feb 6. This semester is hard. I’ve got one easy class (computer engineering), but three University-level classes: Earth and Space sciences, Calculus and Discrete Math. The latter is the troublesome one. I’m not sure what kind of grade I’ll get in these classes. Suffice it to say that I actually have to do my work for the first time in over a year, and for those I work with and talk to, my absence is noticeable.

I still do manage to get work done. I’m scarce during the week, but on weekends I try to finish all the work that needs to be done. Webmaster-Talk always has something that needs doing, so I don’t idle too too much ;) Recently we decided to switch back to our older style from the new one since no one really liked it. We call it our “New Old Style”. Actually it’s called “Sleek” because I was starting to get confused with all the styles being variants of “WT Style” (WT Style, W-T Style, WT_Style… which is which?!!??!). So I updated our older style for vB3.5 (which basically means I started from scratch rather then having to worry about all the new Javascript additions to the templates). It’s live on the site right now and has very good feedback so far, though I’m not satisfied with the header. I made a possible replacement, I’ll see what Tim thinks.

I also created an AdShare plugin for vB specifically for Webmaster-Talk. If you visit Digital Point forums, then you know what I mean. Basically, it lets members input their AdSense client ID’s (we also allow an option channel ID for those who want use that feature) and it shows their adsense code in our site. In our case, a thread starter has a 50% chance of his code showing up, then 25% goes to the last poster in a thread, and then the last %25 is split between the admins. I was skeptical at first, since I really really hate ads (I’m an avid AdBlock user [FF extension]). But now that we’ve got it going, I really like it. A simple and effective way to give back to the community! Our members seem to like it too.

And then this weekend I created a “todays top ten posters” for forumhome. It’s a dreadfully simple plugin, but I though I’d explain what I had to do in case someone runs into the same problem. The problem is the SQL query; it takes forever to grab the 10 users with the most posts within (TIMENOW - 86400). So the solution, of course, is to cache it! In the case of vBulletin, you can use the ‘datastore’ table as a generic cache location (vB has a datastore class that lets you use advanced features like mem cache, but you don’t have to use it*). Just store the data in the datastore (usually a serialized array of some sort which includes the last update time), and then update it periodically. In our case, the list is updated every 2 hours (yes, that means some unlucky lout has to wait a few seconds for the forumhome to load).

* I would recommend using the ‘real’ datastore functionality, but vB doesn’t support plugins editing the list of $specialtemplates (which is responsible for telling the system which datastore items to fetch on startup). The only way to do it is to edit the files, and that is something I’m not willing to do. A small workaround (storing the last accessed time in the serialized array and updating it myself) was so worth it.

There is on last thing on my list (as it stands right now) for WT. We want to let users enter the URL to their blog’s RSS feed, and we want to show a link/title in their postbit of their latest blog entry (also something you’d see at Digital Point, but I’ve seen it a lot of other places too — we’re not copying, I swear!). This also brings up some problems of efficiency. How do you go about getting the latest blog post from each user? You have to parse the off-site RSS feed to do that. But we can’t go out and parse 10 different RSS feeds for every user on showthread, for example, so the plugin has to do it smartly. I’ve got a few ideas of a “smart cache” system. And I want to make a pingback system so users can enter us into their services to ping when they make a new post. This means that we don’t have to worry about updating the cache, the cache is updated only when pinged. I think most users will use this option as it’ll update their post in realtime instead of waiting for the cache life to run out.

After that, I’m working on a project for Robert Winter. A song database of sorts, which needs to be completed by the end of March. I’ve already started and I’ve got the spec down, just need to code the meat.

So I’m keeping busy. Between my online work, school and poker (of which I haven’t won in a long time, though I came in second last game), I keep busy. It’s kind of scary knowing this is my last few months of high school. For the last 12 years, I’ve known year after year that I’d be “going to school again in September”. Not that’s all about to change. Scary, but exhilarating at the same time.

Anyway, that’s that. Consider this entry to fill my post-quota for the week :-)

Ruby

Monday, January 9th, 2006

Well, I got around to ordering a Ruby book (Programming Ruby). It got here about a week ago and I finished it off in about a day or so.

Now that I’ve dove right into Ruby, I’ve found it to be a very nice language indded. Amongst the other reputable interpreted languages available for wide-spread use (PHP, Perl, Python etc), I can say I really like Ruby the best. Before I purchased this book, I didn’t know all to much and I couldn’t really say if I would like it. I knew that A) It was gaining traction and B) it had a fabulous framework called Rails (which was pretty much acting like a catalyst for point A).

Syntactically, it was not very famarliar to what I’m used to (C-style). For a lot of programmers, this fact alone could be a turn-off. But I’ve tried a bit of Python, and I knew that something as simple as using {} instead of the keyword ‘end’ (for example) doesn’t really make a difference. But I was somewhat surprised to see some things that I always expected to see in any language, done quite differently. For example, there is no ‘for’ loop (perse, there is actually one but Ruby will internally replace it with what I show here). A for loop in PHP, for example, might use a variable that counts from 1-100 like so:

for($i = 1; $i <= 100; $i++)
    echo $i . “\n”;

In Ruby, you use methods and a very useful feature called blocks. Blocks allow the programmer to associate a block of code with a function call. The block of code can be called inside of the function. The same PHP code could be written in Ruby:

1.upto(5) { |x| puts x }

Since Ruby is a true OOP language, everything is an object. The literal number 1 is an object of type Fixnum (which is a subclass of Integer), and it has many useful methods that we can use to easily do what we want:

# Count down from 50 to 40 (50, 49, 48 … 40)
50.downto(40) { |x| puts x }

# Count up from 5 to 100 by 5’s (5, 10, 15 … 100)
5.step(100, 5) { |x| puts x }

# Just repeat 3 times (Ho Ho Ho)
3.times { print ‘Ho ‘ }

When I got to using Ruby, there were a bunch of little things that are very intuitive and elegant. If you have not already, give it a go and see if you like it! And I want to say that Rails does not make Ruby. If you don’t like Rails, then you don’t have to use it — another common misconception I hear about is people complaining they don’t like Rails and therefore won’t like Ruby. Ruby != Rails.

Happy New Year!!!

Sunday, January 1st, 2006

^^ Happy new year everyone!

You know you belong to too many forums when…

Friday, December 30th, 2005

You get like a million “Happy Birthday from <Site>” emails! I didn’t even know I signed up on some of them, and some I don’t even recognize.

Still cool, though :-D At least vBulletin didn’t forget! ;-)

New Desk

Thursday, December 29th, 2005

Ever since we moved into our new house, I’ve been complaining that my computer desk in my room was too small. It basically had only room for my monitor and keyboard. This made it impossible to do anything productive (that is, it served well as a storage unit for junk) like writing homework etc.

So today we went out and searched for a desk that would actually fit in my room. My room is not all that large and is somewhat awkwardly designed, so I cannot just place things in any which direction. I’ve got a double-bed which takes up a good 1/2 of the space, then a shelving unit I keep books and misc. things on, and then a dresser. I’ve got them all placed just so, leaving about 1/2 (across from my bed) clear for the would-be desk.

We’ve searched for desks before, but gave up the search because it didn’t really uncover anything that would actually fit nicely. But today, we went back to Staples business depot and had another look at their desks. I settled on one, bought it, got it home and assembled it.

Wow, it is huge. Really, it’s quite large. Well, in comparison to the size of my room it’s big. When you first walk into my room, it looks like it’s out of place but I don’t care — I really like it. I’ve got desk room to work on multiple things at.

So that’s todays adventure. Nothing too interesting, but I thought it was time to finally post again ;-) I upgraded to WordPress 2.0 and released a new version of my “Inline More” plugin, and I’m trying (without much headway, I might add) to make a working copy of my CodeHighlight plugin. The problem has to do with the new integrated TinyMCE post editor (it’s WYSIWYG). The script (talking JS here) likes to clean up badly formatted HTML, but it doesn’t let any plugins (talking TinyMCE plugins) to work on the text before. So before I can go in and change <’s to <’s etc, it’s already gone through and completely removed code :-( I don’t know of any way around it. I think it might have to come to simply creating a new popup window (kinda like how the Insert Image window comes up) that will let you paste code into it, and then do all the special text conversion then. I didn’t want to do that because it makes it messy when switching from WYSIWYG to HTML mode (and back), but whatever’ll make it work again… Btw, on the topic of TinyMCE: it’s a very nice, open source (LGPL) WYSIWYG editor that is easy to integrate into any web app. I think I might use it for some apps.

Anywho, that’s that. I think I’m going to download a new theme for Chroder.com. I’m too lazy/not-design-gifted to make a custom one, and it takes a lot of time to get right.

Harry Potter

Saturday, November 19th, 2005

Well, I went to go see Harry Potter and the Goblet of Fire tonight. First off we had to wait until my buddy was off work at 9:30pm, and then we had to worry about getting to a show that wasn’t completely sold out. I mean, almost every showing was sold out. Anywhere from 12noon today to 11:15pm was gone, so we went to the 11:45pm. It’s now 3:09am — and oh jeez, I love being able to drive :-)

Anyway, the movie was pretty good. If you liked the last one (one, because I think the first two were pathetic, or perhaps they’re all just too young), then you’ll like this one even more.

I passed!

Thursday, November 17th, 2005

That’s right, I passed on the first try :cool:

(Driving test, that is :-D)

Worlds Longest Start-up sound

Tuesday, November 1st, 2005

http://www.prangstgrup.com/startupsound/

I’ve got a few friends that need to see this vid, so I thought I’d post it up here. Hehe.

Ruby and Rails

Sunday, October 23rd, 2005

I’ve started to look into Ruby, and it is a very nice language. And with the excellent, amazing framework called Rails, it is a good choice for new Web applications.

I am really excited about Ruby and it’s Rails, it feels like it’s been a long time since I’ve found a language I can use practically in my every day work. PHP is fine, but Ruby just might be better. Once I get a grasp of Ruby and have some experience with the Rails framework, I will try developing in it (more and more hosts are starting to support it nowadays) — maybe I’ll like it.

Anyhow, if you’re a developer and haven’t checked out Ruby and Rails, then you definitely need to. Ruby is the “next big thing” these days, but it really is looking quite nice. We’ll have to see where it goes. PHP has had it’s run I think, unless this framework Zend has been going on about can compete with Rails or Python’s Twisted.

Edit
Take a look at this video. The guy builds a blog app with Ruby and Rails in about 15 minutes. Cool!

Short Week

Saturday, October 22nd, 2005

This week has been pretty short. Monday there was a college fair thing, so I got out of going to school. I went Tue and Wed, then I had a physical on Thurs (which I took advantage of and took the rest of the day off ;-)) and Friday I helped my Mom’s sister move out. My teachers are probably like, “wtf” ;-)

The New Tech Update

Wednesday, October 5th, 2005

TNT has been on the back burner lately. I’ve been doing some work for Tim, then I’ve got (boring) school that takes up a good hunk of my time. After Webmaster-Talk’s big refurbish (which should be done by Friday or Saturday), I plan on putting a little more emphasis on TNT in my schedule.

I would have done this anyway, but after todays chat with Tim, TNT has moved up the ladder in my priority list. Tim and Dave (that is, DaveMo~ from WT) talked several months ago about starting a new tech site up. And then, lone and behold, I do it ;) So Tim asked what I thought of them joining forces with me, since I’ve already got things off to a start. How could I refuse? Tim is excellent at marketing and advertising and Dave is one of the best community coordinators I’ve ever seen. As a team, we’ll be unstoppable ;)

This isn’t like DBF (which, by the way, has pretty much morphed into WT + DR) or my participation on WT, either. All of us are co-owners. So when people ask “what’s your site”, or when online registrations ask for a homepage, I can type in TNT with all confidence :D

When I first opened the doors to TNT’s forums, it really felt nice to be in control and have a site again. That feeling of prominence has increased ten-fold now that I know Tim and Dave are on board.

I’m really excited about this, I can’t wait to see what the future holds for TNT.

vB 3.5 Gold

Thursday, September 29th, 2005

Just a heads up to vBulletin owners — version 3.5 Gold was released on the 29th.

Get upgrading! :)

No Title

Saturday, September 24th, 2005

Well, I haven’t blogged in a while. The older I get, the more time seems to fly. Before I know it, it’s been almost a month since my last real blog post.

So, I’m back at school now. Enduring very boring classes the best I can, I just want high school to be done once and for all. I am very grateful it’s my last year! After high school, I really don’t know what I’m going to do. It’s kind of scary…

Anyway, what news do I have? Hmm. Nothing, really :-) This month has been unusually uneventful (excluding the single tragic affair posted below, to which I don’t particularly want to elaborate). Only news has to do with some crazy family issues; my moms’ sisters’ ex-fiancee is a complete psycho, and is stirring up a bunch of stuff.

Uhmm… I still need to get TNT up and going. I asked Nick if he would like to dev it with me, he said sure, but I need to set up a SVN repos first. My host allows me to do so, but doesn’t have any of the authentication tools so I have to connect through an SSH tunnel. And though I trust Nick enough, I’m not fond of giving out SSH access, even if it is through a public key. So, I’ll see if I can get them to set something else up.

I think I should also give a congrats over to Kevin. He’s participated in an Ontario entrepreneur program for high school students. He signed up, presented a plan, and they gave him some cash to start his own company. He’s been very successful with his idea surrounding his Salem character, selling T-Shirts, stickers etc. He’s even got interviews at West 49 to sell another one of his creations. So congrats and good luck goes out to him :-)

Then there’s the usual Webmaster-Talk news ;-) We’ve got a new design ready for WT that looks really slick (was professionally designed, some people say it looks stock — but I really like it). I’m waiting for the next release of vB3.5 to come out (be it RC4 or Gold, I’m hoping for the latter) to start skinning. I can’t wait! I really don’t like the current WT design too much.

I’m getting an iPod tomorrow. I convinced my parents to loan me some money. I’m paying $200 up front, and $100 each month until it’s paid off (so, 2 months). I was going to get the new nano (because it’s so damn cool) but after I convinced my parents to loan me the money I though I’d just go for the big guns :-D So because of this and to my friends’ dismay, I’m still not going to get a cell phone ;-) Especially after my buddy had a bill of $80 after downloading a bunch of $3 ringtones :rolleyes: Really what bothers me is the price of the phone. To get a phone cheaply, you have to get tied into a contract for 2 years. What I want is a cool phone, but with the “pay as you go” things. Until I’m rich, I think I’ll just mooch other peoples’ cell phones.

Time to wrap this post up, it’s almost 1AM now ;-)

RIP

Saturday, September 17th, 2005

RIP, DP.

I’m Alive

Wednesday, August 24th, 2005

I haven’t blogged in a little while! My last blog date is July 31st, these last 24 days have just flown past. I really can’t believe it!

Nothing too much is happening over here. I’m kinda slacking on TNT, I spent the last couple of days looking for a CMS to power it but nothing is worth it. Looks like I’ll be hacking it up by myself anyway :-) The programming isn’t the problem, it’s the design. I simply cannot design anything that looks decent! I’ll do my best, though.

The only exciting news I’ve got to report is that I am officially an employee of ePressive LLC! Now I can actually tell people I have a job ;-) So I’ve got some reliable income now, instead of my unreliable contract-based “bonuses”. So I’m really ecstatic about that, I was about to go job hunting and I dreaded working at a grocery store or something. This way I work at home and make my own hours. That means I still have time for other stuff (like School and TNT). As long as I get the work done, everything is cool :cool:

vBulletin 3.5 is around the corner! Me and Tim have decided we would upgrade Webmaster-Talk to 3.5 quite soon, regardless of a gold version. Right now, it’s in RC 2 (and I’m guessing RC3 will be the last before gold) and it is quite stable, so I’m not worried. It’s worth it! I’ve already got our hacks ported over, ready to go. All we are waiting on is a new design (that’s right! A new design! :-))

Other then that, it’s been pretty boring around here (even if the time has flown). I’ve played more poker, had more driving lessons, seen more movies etc. Nothing too excited ;-) Actually, one cool little thing: me and Kevin have started a little production company called LucidFirst. We’ve got our first project underway (I hope I’ll have time!), and it should be a cool watch for any geeks out there and an eye-opener to everyone else.

I think that about wraps it up!

Database Corruption

Sunday, July 31st, 2005

The Webmaster-Talk database went boom this morning. I wake up to find a PM in my inbox on WT, from Tim, saying that the database is screwed up and he really needed to leave and if I could take care of it.

At that point, we had corrupted thread and post tables so no threads or posts were showing up. Not such a big deal, we should be able to revert to a backup that was taken the day before or maybe even repair the database. So after I read the PM, I go and run our repair scripts just in case it might fix the problem. It doesn’t. Not 5 minutes after I read the PM from Tim, the entire database goes kaput. You couldn’t even see our ‘forum closed’ error message.

So now I’m going into the Kualo support desk to take over where Tim left off. The guy there says he will restore the backup that we had from 11 hours prior. Thats great, I’m thinking. Not the best, but 11 hours isn’t too much. Then he comes back and says the backup from 11 hours ago was too corrupt to be restored! So we had to go all the way back to a backup made on the 26th! 11 hours not so bad, 5 days? Bad!

Alas, we are up and running (though not under the best circumstances). I just made an announcement explaining why everything is 5 days old. I wonder if any members are going to explode. I know how they’d feel (well, I know how I feel), but I hope they can understand it was unforeseen and out of our control.

Update 1
And just as I typed this up, our post table (amongst a couple others) is corrupt again! I think it’s time to move our mySQL server to another box.

Update 2 (8:00PM)
So everything should be fine now. The same backup from the 26th was repaired and restored. I’ve opened the forums and and I’m hoping nothing bad will happen. It’s been open for about 10 minutes and I don’t see any corruption, so I hope that means we’re home free.