Home

What patorjk.com is

Posted by patorjk | General News | Monday 24 September 2007 1:16 am

Is it a blog? Is it a software/programming site? Is it collection of random junk?

I’ve actually spent the last month wrestling with the idea of what I want this site to be. When I initially restarted this site I thought “ah ha! I’ll be a software site that releases kick ass tools!” But that’s not really what I want, and that’s not what I’ve been doing. Creating nice tools is part of what I want, but I like messing around and making other stuff too. So this site is really more of a creative programming outlet for me.

Looking back at the past few month’s posts, it was probably a mistake for me to write about certain things and to jump around so much (this mostly refers to July). I’m still trying to get a feel for what I should and should not post in this blog. There have been a couple of times where I mentally wrote a post in my head or even wrote a post in MSWord, and then later discarded it. This site’s theme is a little fuzzy, but after giving it some thought, it would destroy this site’s pseudo-focus if I started making posts on new CDs I bought, bad dates I’ve had, or even amusing stories about former co-workers. Topics like that really belong in a personal blog, something I don’t want this to be. Personal stories should spice certain entries up, but I don’t want this to be like livejournal. I’m sure none of you care about my trip to the renaissance festival.

I could make this a simple news blog for the site, but that would be a little boring. News about the site should play the most important role though. So in the end, I want to do a blog that focuses on news for the software I write but also deviates into topics I find interesting in the computer world with an occasional amusing personal anecdote. Probably not the best hook for obtaining a large audience, but I’d still blog here even if no one read it (it’d be kind of sad, but I’d still probably do it).

Another thing that’s been weighing on my mind is how unrelated all the software I’m producing is. Each new release feels like it becomes its own island within the site, with its own visitors who will probably only look at the blog every once in a while and then wonder why I don’t stay more on topic.

The same people who like my API spy don’t seem to be the same people who like TAAG or my color fader. I know because my visitor count temporarily went down after I released those two programs. The pattern is always that I have a dip in visits after a program is released, and then, if the program doesn’t fall into the abyss of the internet (never to be seen or downloaded again), it rebounds and finds its own audience. TAAG did this (as did the color fader – though to a lesser extent) and it’s now twice as popular as this blog. But do TAAG visitors read the blog? Who are these people? Will they understand me if I write a post on a new algorithm I thought up? Or if I explain the Javascript behind a certain feature?

Probably not, but I can’t please everyone. I think I’ll write this blog with programmers in mind as the main audience. But I’ll try not to use so much jargon that it’s unreadable to those outside of that realm (sort of like how all of the September entries have been).

Anyway, this post is probably more for me than for anyone who will read it. Sometimes thinking out loud helps ideas come into focus. Though hopefully by reading this you got some insight into what I want this site to be.

Oh! – and lastly, I want to stress that this is a content-oriented site, not just a commentary-oriented site. I blog, but I make stuff too. Hopefully stuff that is somewhat interesting.

TAAG: Test All

Posted by patorjk | General News, Software | Saturday 22 September 2007 4:10 am

A “Test All” feature has been added to TAAG. It will let you test all 281 fonts. You can access it by selecting the font called “__TEST ALL__”. It’s not as fast as I’d like, but it’s not terribly slow either. I debated uploading it but I finally decided to give in. I’m still trying to get a feel for the kind of load I can put my server under. Most of the work for this feature is done with Javascript, but the font files are still parsed and loaded on the server. That doesn’t seem like a whole lot of work, but I’m on shared hosting so it’s unclear how much is too much. Also, this new feature is still in BETA, so it may be a little buggy. Let me know if you have any problems.

After this, there’s only one more feature I’m interested in adding to TAAG. And it’s one of those things that most people wont notice and it’ll be a pain in the ass to program. So it’s way down on my list of things to do. In the meantime I’ll probably just keep working on other things and, when the mood strikes me, look into ways of optimizing TAAG.

That reminds me, I was reading a rather interesting article earlier this week on the death of Gmail:

The Death of Gmail

The cliff notes (possibly a little over simplified): History shows that utilizing new but bloated technology pays off in the long run because hardware keeps getting faster and faster and/or people find ways of speeding it up. It’s better to be ontop on the new technology than to be stuck working within the constraits of the old technology.

It’s an interesting read, but I don’t think the people at Google are so smug that they’d let a new technology slip by them like that. Plus, I don’t think most people would be so quick to give up their Gmail addresses.

3-D Javascript

Posted by patorjk | General News | Monday 17 September 2007 1:01 am

One of the reasons I liked Flash was because I could easily create 3-D interfaces. I was initially going to use it when creating the main interface for my slider puzzle program, however, it suddenly came to me that I could probably use Javascript instead. Today, after playing around a bit, I was actually surprised at what I was able to create:

http://www.patorjk.com/games/sliderpuzzles/

Note that I’ve only tested that on the latest versions of IE, Firefox, and Opera. The code for that wasn’t too hard to create (it’s still a little buggy and I’m not done with it yet though), I kind of wonder why there aren’t more 3-D Javascript interfaces for websites. I would think it would be much more practical than Flash since the user wouldn’t need a plug in, and the script could react to the browser resizing.

I think this slider puzzle app will unfortunately be one of those programs that I enjoy writing more than people enjoy using. It’s hard to get excited about doing puzzles of famous art. After thinking a bit more a Sarah Michelle Gellar puzzle gallery would be pretty cool, but I wouldn’t want to risk the copyright issues. I wonder if the gallery sites have deals with the photographers or if people just post up the images ignoring the copyright (hoping to fly under the radar).

Slider Puzzles

Posted by patorjk | General News, Software | Friday 14 September 2007 1:34 am

A long time ago I used to have a Sarah Michelle Gellar Javascript puzzle up. I made it one day while I was bored and trying to learn Javascript. I figured it’d fall into the abyss that a lot of my Javascript projects fell into (anyone remember that ghost clicking game I had?). Oddly enough though, it ended up generating quite a few emails. Mostly Sarah Michelle Gellar fans. Later I built a more advanced slider puzzle, but it was total crap and featured Britney Spears (not the best choice) and I’ve always wanted to write a better one. So on Sunday I sat down and churned one out. One that would allow me to do lazy updates by automatically looking for new puzzle images (keeping the data and the script separate).

Originally I was going to make a Sarah Michelle Gellar slider puzzle gallery – but then copyright issues came to mind and I decided to not to risk it. Plus I thought it might look kind of creepy for me to have a large, shrine-like Sarah Michelle Gellar puzzle gallery on my site.

My next choice was to do Salvador Dali paintings, but it turns out his stuff is under copyright too – and for the next 50 years at that. The ARS, who now manage Dali’s copyrights, seem to be pretty active in going after potential violators. Not the kind of people I want to tangle with.

So instead, for my first slider puzzle gallery, I decided to use the works of Paul Cézanne. He’s a famous impressionist painter whose paintings often pop up in computer graphics journal papers, since the images are public domain. You can see the resulting slider puzzles here:

http://www.patorjk.com/games/sliderpuzzles/

I think I’m going to try and have a variety of galleries since it simply involves finding free images to use.

As stated before this script is relatively new, so it may be a bit buggy. Let me know if you have any problems – or if you have any suggestions!

New App This Friday / Programming Challenge

Posted by patorjk | General News, Programming Examples | Monday 10 September 2007 10:52 pm

New App Coming

On Sunday I sat down and programmed up a new online app. I might tweak it a bit between now and then, but as of right now it’s essentially done. I’ll post it up later this week – most likely Friday or Saturday. Since I wrote it in one day, you can assume it’s pretty small, it’ll be cool though! I actually really like it (and I don’t like everything I make). It was on my list of “stuff to do on a rainy day”. Sunday wasn’t actually rainy, but I was tired and I realized I hadn’t released anything here in a while, so I thought I’d take a stab at it.

I had been working on another online app, which I’ve mentioned a few times here before, but it was a bit too ambitious and I’ve lost interest. So it’s offically been abandoned for the moment. I may come back to it later though.

Programming Challenge

While reading some more of Steve Yegge’s blog entries, I ran across a very interesting programming question. It came from an entry Yegge wrote on doing phone interviews. He would always ask potential candidates the following question (or a variation of it):

Last year my team had to remove all the phone numbers from 50,000 Amazon web page templates, since many of the numbers were no longer in service, and we also wanted to route all customer contacts through a single page.

Let’s say you’re on my team, and we have to identify the pages having probable U.S. phone numbers in them. To simplify the problem slightly, assume we have 50,000 HTML files in a Unix directory tree, under a directory called “/website”. We have 2 days to get a list of file paths to the editorial staff. You need to give me a list of the .html files in this directory tree that appear to contain phone numbers in the following two formats: (xxx) xxx-xxxx and xxx-xxx-xxxx.

How would you solve this problem? Keep in mind our team is on a short (2-day) timeline.

Aparently 25%-35% of the software developers he asked this question to could not solve it. So give yourself a pat on the back if you think you’ve got a solution. Once you’re sure on what you’d do, click here to see what the best solution would be. I was actually estatic that I got it, though I’ve been using Unix a lot at work, and I’ve been reading up on regexes, so it’d be pretty bad if I didn’t get it. If you’re not a programmer, reading that solution will make no sense to you. This is the blog entry it’s from. It’s basically an article on what you should know when you go into an interview for a software development position.

Blogging

Posted by patorjk | Interesting News Articles | Thursday 6 September 2007 11:13 pm

Lately I’ve been telling my friends, friends of friends, casual acquaintances, and random strangers I meet on the street that they should start a blog*. I’m not sure what’s gotten into me. Blogs are fun though, even if no one reads them. I’ve had a lot of trouble trying to justify this though, until I came across a really interesting article the other day:

You Should Write Blogs

That blog entry was written by Steven Yegge, a 30-something Google employee (though he was working for Amazon when he wrote that). My favorite observation from Stevey is that “struggling to express things that you’re thinking or feeling helps you understand them better.” I think he’s dead on there. If you take the time to write about something that’s on your mind, you’ll end up understanding it a lot better. It’s like having to teach someone something. The act of explaining the subject helps you better understand it – and it helps you understand how much you really know about that subject.

When I was in grad school I had to teach these 45 minute C++ lab courses. They were comprised of small groups of students from one of the computer science introduction lecture hall classes. I taught the labs daily, but they only ocurred once a week for each group of students. Even though I considered myself pretty proficient in C++, having to explain all the nooks and crannies made me realize I didn’t understand things as well as I thought. However, it turned out that each class usually had the same questions about C++ and the lab assignment (it was almost Twilight Zone-ish really), so I got progressively better at teaching the lab as the week went on. It was funny, on Monday I’d look like a bumbling slacker, but by Friday I seemed like some kind of C++ wizard. I actually had a couple of the Friday kids give me some strong complements on my C++ skills :P . So writing down your thoughts and exploring certain topics can help you better understand them.

Another thing Stevey does in his article is give and refute 4 popular excuses people give for not writing blogs:

  • I don’t have enough time to blog.
  • I’m afraid to put my true thoughts on public record.
  • No one will read my blog.
  • Blogging is narcissistic.

Reasons #1, #3, and #4 are petty excuses in my opinion. However, reason number #2 is not something that should be treated lightly. One’s opinions may be the “spice” to their entries, but you can get yourself in a lot of trouble if you don’t exercise some common sense. I’ve had employers, girl friends, ex-girl friends, and friends get pissed at me over entries I’ve written in past blogs. And not the kind of pissed where they grumble and forgive you 5 seconds later, the kind of pissed where you’re given the look of death and not spoken to for a while. You live and your learn though. I no longer blog about personal matters unless I have a good story to go with it. Plus it’s just more fun to write about my hobbies/interests than it is to write about things that annoy me or about my daily activities. I could probably write an entry on how I sat in a cube for 8 hours today and then went home and ate some ramen noodles, but it wouldn’t be very fun to write, and I’m sure it’d be even less fun to read.

So anyway, if you have the urge to blog, I highly recommend reading the above article. It’ll jump start your motivation. And don’t worry about no one reading your blog, you should write it for yourself. Hell, this blog isn’t even the most popular thing on this site – TAAG is (I’m actually surprised by this – it’s mostly due to Google though). Which reminds me, I need to get back to developing stuff. Anyway, think about what I said.

*If you’re one of these people, know that I didn’t write this entry to be directed at you. I actually have been a little over zealous in my promotion in blogging. I dunno why, it’s just gotten under my skin.

The Last Days of Summer

Posted by patorjk | General News, Uncategorized | Tuesday 4 September 2007 5:03 am

I decided to I take a 5 day weekend to celebrate the end of summer. I needed some time to just sit back, relax, and clear my head. For my break I thought I’d read a book on PHP, check out a John Swartzwelder novel, and do some serious coding.

It’s strange how one’s plans can just go right out the window. I didn’t get any of the above done, though I did have a lot of fun. It’s weird that I planned such an anti-social weekend and then went out did a bunch of stuff. Looking back, I had a lot of fun this summer. I didn’t really take any time to soak it in or appreciate it until just now though. I hope everyone out there reading this had a good weekend.

Today is officially the last day of my big weekend. Hopefully I get some of my original goals done so I can have some more stuff for this site. In the meantime, if you’re bored, I highly recommend viewing this short film:

It was shown to me by a friend a few years ago and it’s absolutely beautiful. I’ve actually re-googled for it a couple of times just so I could re-see it.

Well, it’s almost 5am, I should be getting to bed. I don’t want to totally mess up my sleeping schedule for Wednesday.

Stats: August

Posted by patorjk | General News | Saturday 1 September 2007 3:37 am

Average Number of Visitors a Day: 156.45
Total Number of Visitors: 4850
Total Amount of Bandwidth Used: 2.93 GB

Links from an Internet Search Engine  
13 different refering search engines Pages Percent Hits Percent
Google 1188 90.6 % 1188 90.2 %
Yahoo! 59 4.5 % 59 4.4 %
MSN Search 14 1 % 15 1.1 %
Ask 11 0.8 % 11 0.8 %
Unknown search engines 10 0.7 % 10 0.7 %
AOL 10 0.7 % 10 0.7 %
Windows Live 9 0.6 % 9 0.6 %
AltaVista 3 0.2 % 3 0.2 %
Google (Images) 3 0.2 % 3 0.2 %
Google (cache) 1 0 % 5 0.3 %
Dogpile 1 0 % 1 0 %
del.icio.us (Social Bookmark) 1 0 % 1 0 %
Blingo 1 0 % 1 0 %

Thanks again to all of you who check in every so often. I’ll do a real update later this weekend… I promise…