All posts by patorjk

Three Crazy Software Ideas I’ve Tossed Out the Window

A while back I announced I was going to create 2 new online apps. I’m about 80% done with the first one. I started on it last week and have been working on it every once in a while. It’s a rather small app, but it’ll have some features which I think people will like – well, at least one person should, since it’s based off their request. It should be ready next weekend.

The other app, which I’ll reveal in the list below as #3, I’ve decided not to write. After thinking a bit, I decided it was the kind of application that would be cool to write, but that no one would have any practical use for. These kind of ideas come to me every once in a while, most of the time I come to my senses, though sometimes I actually end up implementing them and releasing them to the public (my Mini-Hex Editor comes to mind). Below is a list of four ideas I’ve had that I seriously considered and than later realized were ridiculous. If you happen to think any of them are not-so-ridiculous, feel free to take the idea and implement it.

1) Online Texture Synthesizer

Texture Synthesis is the process of taking in a texture and then outputting a much larger version of that texture. Usually, you want to minimize repeatability, so the texture seems more real, so you try to “learn” the texture and grow it out into a larger area. Below is an example. Texture A is inputted, and texture B is outputted.


Pretty cool, right? Texture Synthesis is the kind of thing you learn in grad school. It’s one of those weird topics that advisors try and push on their students since it’s apparently a ripening area with lots of creative solutions that people can publish papers on. My advisor had me learn all about texture synthesis. So naturally, as I was pondering possible apps to make, I thought to myself “Hey, why not make an online texture synthesizer!” It seemed like an intriguing idea at first. There are lots of algorithms to chose from, and I had already implemented a few of them for graphics projects I had to do. But then it occurred to me: What would anyone want with a texture synthesizer? Seriously. It’s a neat problem, but outside of a few far out purposes, there’s really no reason anyone would need such a program, at least your average person. And I’m sure people who would like a texture synthesizer would probably be more likely to build their own engine for it than to use some program some guy posted up on his website. So the idea was scrapped. It’s a neat problem though.

2) Moving Window Art Generator

A few years ago, while in daze of bordem at work, I suddenly had this weird idea of creating layered moving graphics. Only the graphics didn’t move, just the holes between them. I thought the idea was so cool that when I got home I whipped up a program to create the image stills and then I used a gif creator to make the gifs. Below are two such gifs I created:


I should say there is NO POLITICAL meaning behind the Pat/Bush picture. I just thought it was trippy looking. I made a few other various designs. Mostly people thought they were weird. Though I did have one Visual Arts major think they were really cool, which made my day. I thought about writing a polished version of the program that would fully create the gifs, but then I realized that no one had asked for such a program, and outside of a few friends, most people thought the images were really bizarre. Actually, if I get really really bored, I may one day re-write an app for this. But at the moment I have much more useful things on my plate.

3) Online Magic Eye TAAG Program

You’ve heard of Magic Eye pictures, haven’t you? Those neat little images where when you unfocus your eyes a 3D image appears? Well it turns out those things are actually called autostereograms and the wikipedia article on them explains the algorithm for how they are created:

http://en.wikipedia.org/wiki/Autostereogram

I thought that article was really fascinating. So much so that I thought about creating a Magic Eye generator, but then decided that the Magic Eye people might not look too favorably on that. But then I found this:

http://en.wikipedia.org/wiki/Single_Image_Random_Text_Stereogram

ASCII Art autostereograms, and I thought “hey, I’ve just written a program for creating large ASCII Art text, why not make a program that lets you see them in 3D!” I figured it’d be something that people would get a real kick out of. However, only the “Banner” font would work, since the generated ASCII images would not have the characters from the fonts pop up, but the areas of space that those characters took up pop out.

However, after giving this some good thought I came back to what had stopped me from creating apps #1 and #2: Would anyone ever have any practical use for this?

It might be fun to use once or twice, but I couldn’t see anyone using it more than that. And I couldn’t think up any situations where someone would actually use the app for something – other than maybe making generating some 3D text to show someone for the sake of showing them something they hadn’t seen before. That’s not really the kind of app I want to make. Plus it’d be a lot of hard work for something that would get such little use. And what if the Magic Eye people made one that generated pictures and not text? That would be so much cooler.

Anyway, that’s a sampling of apps I seriously considered and then later ditched. Hopefully you’ve found them somewhat interesting. Talking about them makes me feel less bad about spending so much time thinking about them.

Loose Ends

I’ve added a few things from my previous site:

Basically, two programming related tutorials that were written for this site and a gallery of mosaics. I think I want my programming section to consist of just tutorials this time, instead of downloadable examples. Well, I may do a little of both, but tutorials appeal a lot more to me. And for the moment being, I’m not taking any submissions, even though I’ve had a few people offer to write examples. Somewhere inside of me there is a Regular Expressions tutorial, but I want to wait a while, and I need to think up some really good examples for it. In school when I was taught about regular expressions, they were presented in the most boring way possible and we were shown no real world application of them. It was only recently that I re-discovered them and realized how great they really were.

I’ve stopped doing Spot Lighted Site posts and no one has called me on it. Not that I’d think any of you would lose any sleep over it, I felt kind of corny doing a weekly feature like that anyway. From now on I’m only going to sporadically feature a site or an article, since a lot of “Spot Lighted” posts might clutter up the main page and make it harder for people to find the real news. I’m also kind of torn on what kind of sites to feature. In the past I’ve featured some completely non-programming related sites like antigirl.com and sullen (now defunct), but it doesn’t really make a whole lot of sense for me to do that. I think I want to keep this site mostly on focus – though deviations from time to time are good. So I guess with all this rambling what I’m trying to say is that there’ll be less Spot Lighted Sites (like what’s been happening for the past month), and when something is talked about, it’ll hopefully have some kind of interest to the people who come here.

Kwik-E-Mart

During the past 2 weeks I’ve had a few friends tell me that one of the local 7-Eleven convenience stores had been transformed into a “Kwik-E-Mart”, the cartoon convenience store that the Simpsons shop at. Being a huge Simpsons fan, I had to check it out.

It took us 45 minutes to drive down there. Luckily, and as you can see from the above pic, they went all out. They were even selling actual items from the Simpsons TV show, like Buzz Cola, Krusty O’s, pink donuts, and Squeeshies. Sadly, there was no Duff beer. Below you can see my brother Kyle holding a box of Krusty O’s.

I couldn’t resist buying a box, along with a huge case of Buzz cola, a Homer cookie, and a Squeeshy. The place was pretty packed, and it seemed like everyone else was doing the same. I’m glad I only bought one box though, I saw several people buying 2-4 boxes. They’ll probably be pretty bummed out when they get home and find out it’s just fruit loops inside (I was somewhat annoyed at this – come on, Krusty O’s != fruit loops).

Before this, I don’t think I’d ever been to a 7-Eleven. So even though there were decorations everywhere, I wasn’t sure how far they’d gone to make their business look like a Kwik-E-Mart. I thought it was cool they had gross looking hot dogs for sale though. If that’s what they normally sell, I’m surprised anyone eats them.

Everyone else in the store was taking pictures like crazy too. You couldn’t move 5 feet without getting in the way of someone’s photo. However, I highly recommend a trip up to one of these stores. It’s probably the most fun I’ve ever had in a convenience store. You can find the closest one to you here:

http://www.7-eleven.com/kem.asp

Here are some more photos I took:

http://www.patorjk.com/images/kwikemart/freezer_man.png – The freezer man!
http://www.patorjk.com/images/kwikemart/kyle_buzzcola.png
http://www.patorjk.com/images/kwikemart/kyle_comicbookguy.png
http://www.patorjk.com/images/kwikemart/kyle_outside.png
http://www.patorjk.com/images/kwikemart/pat_chiefwiggum.png

As a side note, the Buzz cola is just generic soda, and it doesn’t taste that great. So don’t buy a huge case unless you’re doing it for the cans. Same with the Krusty O’s – they just generic fruit loops. The Squeeshies are good, you should definitely get one of those. They were out of pink donuts when we got there, but I imagine they taste like any other donut you buy with pink frosting. There were a couple of other Simpsons themed products, but those were the main ones.

IMapper Studios Re-Introduction

During my senior year of high school I had the bright idea that I could make a living developing shareware – or at least pocket a few extra bucks that would make life a little easier. So I set forth on an idea that I had been throwing around in my head – a program that would allow you to easily create image maps for your web pages.

This decision was not made after examining the market and realizing there was a demand for this product. No, I decided to make an image mapper because:

A) I thought it would be fun to develop the moveable shape interface (shapes you can draw and then move around). It seemed like an interesting challenge for a visual basic app.
B) I saw some shareware image mapper that was selling for $15 and it royally sucked. I knew I could do better than that – and I figured I could make my product half the cost.

The development itself went pretty smoothly. I remember being at school, making notes on how I’d design everything. The pre-hype for the program also seemed to be pretty good. After my API Spy, Form shaper, and Mosaic app, a lot of people were interested in what I’d put out next – especially as a shareware app. I was even able to coax the then well known graphic designer Plastik into doing my intro graphic. So I had high hopes for the program.

However, when the release date came, I was getting kind of sick of the application and didn’t do much promotion besides posting up a notice on my main page. This wasn’t just because I was bored of the program, college was coming up and I had agreed to work for some start up (long story). So to make a long story short, I spent a lot of time making the program, but didn’t spend enough time promoting it. And because my audience at the time (VB developers, mostly prog developers) had no need or interest in the app, it didn’t make much of a wave.

I think I made a total of $100 after the first year, which kind of bummed me out. I realized I had picked the wrong application to make and I had not promoted it correctly. It left a bad taste in my month and whenever I think of the program, it sort of reminds me of failing. However, every time I actually open it up and look at it, I think it’s a pretty cool. It reminds me that I was a pretty good developer while in high school, and for some reason, I always forget that I was able to get Plastik to do the intro art, which blew my mind at the time. Anyway, I opened up the app earlier today and thought to myself “why did I decide not to post this??” So without further ado, I’m re-introducing this program for download. Below you’ll find some screen shots and links to two different zip files.

[Download] – The setup file.
[Download] – Just the exe and help file.

Stats: June vs May

I’m a big fan of stats and seeing what works and what doesn’t work. At the end of the day, it appears that TAAG was a worth while program to write. Hopefully I can continue to think up new stuff that will be interesting for people to check out. My end of the year goal is to be getting 500+ visitors a day. However, that may be a pie in the sky dream because even if I kept increasing my visitor count by  18.3%, I wouldn’t make that goal.

Also, based on the search engine results, I think I can conclude that google is awesome.

June Stats:
Average Number of Visitors a Day: 84.00
Total Number of Visitors: 2520
Total Amount of Bandwidth Used: 547.01 MB

Links from an Internet Search Engine  
8 different refering search engines Pages Percent Hits Percent
Google 373 91.8 % 373 91.8 %
Unknown search engines 11 2.7 % 11 2.7 %
Yahoo 9 2.2 % 9 2.2 %
AOL 5 1.2 % 5 1.2 %
MSN 5 1.2 % 5 1.2 %
Ask Jeeves 1 0.2 % 1 0.2 %
MetaCrawler (Metamoteur) 1 0.2 % 1 0.2 %
Dogpile 1 0.2 % 1 0.2 %

May Stats:
Average Number of Visitors a Day: 71.00
Total Number of Visitors: 2201
Total Amount of Bandwidth Used: 154.19 MB

Links from an Internet Search Engine  
5 different refering search engines Pages Percent Hits Percent
Google 137 84.5 % 137 84.5 %
Unknown search engines 9 5.5 % 9 5.5 %
Yahoo 9 5.5 % 9 5.5 %
MSN 4 2.4 % 4 2.4 %
Ask Jeeves 3 1.8 % 3 1.8 %

A peak inside Google…

I found the following blog entry on a leaked memo from Microsoft about life at google really interesting:

http://no2google.wordpress.com/2007/06/24/life-at-google-the-microsoftie-perspective/

Basically, a new Microsoft employee, who formerly worked at Google, is dishing out all the info he can about his former employer to Microsoft so that they can better understand their competition. Some of the more interesting pieces of info:

* All of the food at Google is free – breakfast, lunch and dinner – however, they stop serving hot breakfast at 8:30 and they don’t start serving dinner until 6 or 6:30, thus encouraging people to come early and leave late.
* A lot of people don’t get around to doing their 20% project.
* The culture is very college-like.
* People tend to take their work home with them.
* Office space apparently sucks.

However, though this memo tends to try and put everything in a negative light, I still think Google has some pretty awesome perks. Hell, if Northrop Grumman served free hot breakfast before 8:30, I’d probably try and get in earlier, and if lunch was free I’d probably eat there instead of packing a lunch. In fact, I hope the whole free food thing catches on, because food isn’t that expensive and a large company could easily buy in bulk and save its employees some cash.

I also like the idea of free t-shirts and free soda. Though maybe I’m living in a dream world.

At Northrop we do get free brownies on Friday, however, that’s only because one of the ladies on the floor bakes them for everyone. We also have giant snack room, however, you have to pay for the snacks you take.

I’ve talked to many of my non-techie friends and they’re surprised by the perks I get, so maybe I shouldn’t be so selfish. However, I hope the trend of free stuff continues and spreads to other companies.

Exhausted…

I had this big long journal entry in my head that I wanted to write, but at the moment I’m completely exhausted, so I’ll just give you the basic talking points:

* TAAG has had some major updates
– 11 New AOL fonts were added
– The code was optimized a bit, so it should run faster
– A preview page has been fully constructed with all of the fonts. Lets me know how this looks. I plan to spruce it up a little and maybe add a few more features in.

* I’ve been thinking it’s time to move onto my next application. I’ve got 2 ideas in mind that I want to implement. One is something easy that someone suggested through email, and the other would take a little bit of research and a little more time. Both would be online apps.

* I’ll probably be buying a new car within the next two weeks (maybe even on Sunday). My current plan is to get a Tiburon. I know it doesn’t have the highest ratings in everything (though it has gotten decent ratings and all the reviews I read were positive), but it looks awesome – yes, not a reason one should buy a car, but it’d be nice to drive something that actually looked cool.

136 Fonts Added to TAAG

Clear your caches people, TAAG has had the following updates made to it:

– 136 FIGlet fonts were added. Many of these I haven’t tested out yet, however, they should all work fine.
– “Smushing” should now work 100% correctly. Each FIGlet font has a series of rules that determines how its letters “smush” into each other when they are side by side. You can turn this option off/on by unchecking/checking the “Horizontal Text Smushing” checkbox.
– Some behind the scenes stuff that you wont notice but makes the code nicer.

View TAAG here: http://www.patorjk.com/software/taag 

I’m not sure I’ll finish the preview page today, which is why I’m updating this so early. If I do get it done within the next few days, I’ll just edit this entry to announce it.

Also, within the next few days around 10 new AOL fonts will be added. Awesome Andrew was kind enough to send me a copy of my old prog “Fallen Legion” which had a whole bunch of them. For more info see the comments in the post below this one.

Scatterbrained

TAAG

Big updates coming for the TAAG program. On Sunday, I hope to have the following:

– 100+ new fonts uploaded
– A preview page that will show you all of the fonts

Pic to HTML

One of ideas I’ve been toying with for a future project is a Pic to HTML program. This appeals to me mostly because I made one way back in the day and have lately had a few requests for it, I have a few new ideas that I think would make it worth writing, and because it would sort of compliment the TAAG program. I was thinking of making it an online web app, so I decided to survey what else was out there. One of the apps I saw had a disclaimer from the author, saying you had to login before you made anything. This was because someone was apparently uploading gross/illegal images to his server.

I would assume, and I may be wrong on this, that he knew the images were gross/illegal because he was logging what images people used in his program. Though he did later say he wasn’t doing this, so I’m not sure how he knew. However, this did give me some pause. I guess I’m naive, but using these web applications I would assume everything I do is private, however, this is most likely not the case in every web app. When the app isn’t on your computer, you don’t really control where the data goes. Hell, someone could write an online app and then funnel all your data to some marketing firm or use it to spy on you.

These ideas kind of creeped me out, and made me realize why online apps probably aren’t more popular. So if I do decide to make a Pic to HTML program, I’ll probably make 2 versions – one you can download, and one you can use online. Though I promise you all that I’d never log any info you inputted into one of my programs. However, we’re talking about weeks from now (hell, TAAG isn’t even done yet), and I have some other ideas I’m playing around with, so at this point in time, I don’t know what my next project will be.

Fourm

On my stats page I’m noticing I’m getting around 20 hits a month to http://forum.patorjk.com. I’m not sure if there’s a link somewhere on the web pointing to that, or if people are checking to see if the message board still exists, but there are no forums on this site. At the current moment I’m averaging 70-something hits a day (though the past few days I’ve been getting 100+ visitors, which has been cool). I have no plans on bringing the forums back until I’m getting 500+ visits a day, and even then I’ll have to think about it. I did really like the community this site once had, but you can’t grow something like that overnight, and I don’t want them to be a ghost town (what they ended up turning into the past few years).

Blogroll

Are there any likeminded sites out there? In the past, I felt like I was part of a community of sites, these days, I sort of feel like I’m out on my own. Like I pointed out a while ago, a lot of my previous contemporaries have either abandoned their sites or gone on to other things. Hell, I don’t regularly visit many programming sites / blogs anymore. I feel like I should be though. I was linking to my (real life) friend David’s site, but he hasn’t updated it in 7 months and it’s mostly just for his personal photos anyway.

More TAAG Updates

Last night I made two major updates made to the Text Ascii Art Generator:

– A whole crap load of fonts were uploaded, probably between 80 and 100.
– I added some Javascript that converted URLs into hyperlinks in the sections about the FIGlet font authors (the “Click for Info” link). I figured this would be a nice gesture toward the font authors since most people, including myself, are usually too lazy to copy and paste a URL. You can see this script in action in the information section for fonts like “AMC razor 2” and “Sub-Zero”, as well as many others. Alas, after implementing this I discovered most author’s homepages were long gone. Oh well, I still think it’s a nice addition.

To those of you curious as to how this was implemented I used regular expressions. This changed what could have been a lot of code, into one simple line of code! Check it out:

String.prototype.urlsToHyperlinks = function()
{
  return this.replace(/\bhttp:[^ \)\n\<]+/g, “<a href=’$&’ target=’_new’>$&</a>”);
}

And then to use it, do this:

var urlText = “blah blah blah http://www.patorjk.com/ blah blah blah http://www.google.com/”;
var hyperlinkedText = urlText.urlsToHyperlinks();
alert(hyperlinkedText);

Feel free to use this however you want.

If the above code just looked like a bunch of gibberish, don’t worry, regular expressions are easy to pick up. You just need to get the syntax down. Here are some links that should help you get on your feet pretty quickly:

http://www.webreference.com/js/column5/
http://www.javascriptkit.com/javatutors/re.shtml
http://www.w3schools.com/jsref/jsref_replace.asp – Make sure you read example 4. Too many people don’t realize that about the Javascript replace function.