|Ray/Path Tracer in Cocoa|
|by Jon on Saturday, March 1, 2008||file under: Technology|
Its incomplete: the kd-tree implementation doesn't work properly and it generates odd sinusoidal noise when path tracing. For simple ray tracing cases, though, it looks really good.
The implementation was done in Objective C++ (an un-holy mashup of Objective C and C++). I enjoy programming in both languages, and there are features of each that I would like to see in the other, but using them both at the same time introduces complexity that projects with short deadlines don't generally need. On the other hand, I really like being able to intermix fast C++ code I have been using since college with elegant Cocoa. As long as you know that you have to give your Objective C++ files a
Anyway, the point was that this project is in the can. I may have to revisit it later this semester, but for now, I can catch my breath.
Update: here's a shot of the path tracer with its ridiculous wave pool interference.
|The Best Website is the One I Don't Have to Visit|
|by Jon on Friday, January 11, 2008||file under: Technology|
I've come to the conclusion that I don't like webapps. Some of them are cute or convenient, but in whole, they all have the same flaws: they require internet connectivity, they all reinvent common desktop application paradigms, and they don't communicate with any of the other apps that I use.
This may seem shocking, since I write webapps, a couple of which I think are pretty good. Many of the apps I work on exploit their web-by roots (they are traditional, page based sites which happen to be driven by some content management application), and all of the webapps have an API, so I (or someone more ambitious then myself), can write a decent client app which uses the web.
The majority of my favorite web sites don't make me visit them. I use del.icio.us through Cocoalicous or the del.icio.us Firefox extension. I use Twitterific to get to Twitter. I use Mail to get my Gmail over IMAP, the Package Tracker widget to get stats from USPS.com, UPS.com, and DHL.com, and for the most part, NetNewsWire to read periodical websites. Even Fat Charley has an RSS feed.
This is the direction I'd like to see web development take: Client/Server for the masses, with rich apps on the client and synchronization/storage on the server. Client apps can work offline (if nothing else, to show you the last state of the server), they use native widgets, but are designed to fit within their domain (a mail app looks different then a package tracker), and they all work together with my address book, calendar, and file system.
Not only that, but people are free to use the clients they want. I like Twitterific, but maybe iTweetr is more your style. There's more mail clients then can even be mentioned. And typically, Mac users get a different selection then Windows or Linux users, with apps on each platform integrating into each environment.
Decent client apps put even the best web apps to shame, and great client apps are in a completely different league.
Don't get me wrong. HTML over HTTP is great when I'm at an unfamiliar computer and need to check my mail. But why would I want to go to a website to read other websites (web-based RSS reader).
A year ago or so I was working on just that, a web-based RSS reader along with Mike Joyce and Nick Pazoles. We were nearly read for a public beta and the app was completely usable for a daily reader. The interface was web-2.0 to the hilt: it kept track of your read status, and even had some social hooks. But I lost interest as I realized I didn't want a web app. I wanted a real reader with synchronization. (which, thanks to NewsGator, I finally have).
I like great web app when I need them, but not for general use. If you're writing a web app, give me an API, some hooks, or some kind of way to get the data programmatically. I'll be very appreciative.
|I Want my DTV|
|by Jon on Wednesday, January 2, 2008||file under: Technology|
In the yesteryear of mid-2000 I bought, what was at the time, a big TV. Its a behemoth 32" CRT which weighs more than I do on most days. The power supply isn't properly shielded, providing a nice sine wave pattern in dark colors towards the left side of the display, the channel changes randomly after a few seconds after its been turned on, and the menu's don't display properly if the input signal isn't clean, but overall the picture is good, it was a decent deal, its the only TV in the house, and Kortney and I have no intention of getting a new TV any time soon.
We also don't have cable, or satellite, and in many cases, reception of any kind, without playing games with the antenna, which on the second floor (TV is on the first), so that we can get better overall reception. We've been toying with the idea of subscribing to a service; there are days when I miss Cartoon Network and Comedy Central, and Shark Week potentially makes the monthly fees worth it. The biggest win would be that we'd finally have a clear picture on our TV and we wouldn't have to monkey around with an antenna anymore. But that's all we really want - a clear picture - not 150 channels to veg out in front of. So instead, we've decided to get an ATSC tuner.
An ATSC tuner, what's that?! Most stations (at least here in the valley), have already started their digital broadcasts, which use a broadcast format called ATSC (classic television broadcasts in america were NTSC). The big difference between the two standards is that NTSC provides an analog picture and audio signal, while ATSC is digital. With NTSC if you got a weak signal, you got a weak picture. With ATSC you either get a picture, which is crystal clear, or you get nothing. There is never a degraded picture like with old style broadcasts.
In just over a year, all stations will be required to turn off their analog NTSC broadcasts and broadcast solely using NTSC. If you don't have cable or satellite, and rely on over-the-air broadcasts, you'll stop getting a signal, unless you buy an ATSC tuner, which will decode the new digital signals for you.
Unfortunately, ATSC tuners are both hard to come by, don't seem to be very good, and can be relatively expensive. The RjTECH RJ-1000ATSC is only $80, but the reviews are less than favorable. Samsung also makes the DTB-H260F but prices start drifting towards $200.
All is not bleak however. The government has heard the people's cry for free, over-the-air entertainment, and has started a program to help people ease into digital television. The department of commerce has created a program to give people a $40 coupon towards the purchase of up to two bottom of the barrel ATSC tuners, which will be available in a month or so. Since the MSRP of the boxes is estimated to be around $50, that means you could potentially get a ATSC tuner for $10!
Now, don't go thinking you can walk into your favorite consumer electronics store and plunk down your $40 coupon and get the Samsung tuner for $120. The eligible tuners can't have USB or Firewire outputs, or digital coax or optical audio output. But you will get standard features like program information (channel number and name, program name, time slot, and rating). If you're lucky, you might even find one with S-Video output. Some of the models that will be available shortly are the RCA DTA800, the LG/Zenith DTT900, or several from Magnavox/Philco. An article just popped up on Slashdot as well.
I like how several commenters on Engadget think that only your grandmother will need these converters. Note to the intarwebs: not everyone cares about (or had a TV which can accept) HDMI, component inputs, or getting a new TV every 36 months. I'm looking forward to finally getting decent reception at a great, non-recurring price!
|Semester Done: Time for Christmas Parties!|
|by Jon on Tuesday, December 18, 2007||file under: Off Topic|
Another semester is over and Christmas seems like its right around the corner. What better time to post an update than the chilly break between semesters?
I took two great classes this semester and completed several projects that I'm very happy with, for several reasons. Oddly enough, the finish products aren't of much use, but there are concepts and snippets that should prove to be invaluable. I wrote a post at Macsploitation about adding and using delegates in Objective C, and plan on sending some code I ported from MFC to Cocoa to another site, when I get a chance. I'm excited that next semester will be my last semester of formal coursework, which will leave me with a thesis to write in the fall. If anyone has interesting topics concerning computer graphics/visualization or distributed multimedia, I'm all ears.
Last night Kortney and I went to the Go Daddy holiday party, and it was out of control. The party was held at Chase Field. The reveal when entering the stadium was amazing: the entire field was covered with people, bars, video games, motorcycles, an indy car, and stage set up in center field. The sheer volume of people was overwhelming to me. Because I could, I ran into the outfield boards, pretending I was catching a long fly ball: the phantom batter was SO out! The Gin Blossoms headlined, and Busta Loadtest couldn't have been more thrilled.
Lately I've been trying to move into some esoteric new mode of development. I don't know how to describe it, but I feel as if there is a difference between the every-programmer and the guru and that I'm currently somewhere in between. To this end, I've been learning Smalltalk and running through problems on Project Euler. As always, I think my lack of focus is getting in the way.
Kortney and I will be spending Christmas at the Gray's again this year. I only have Christmas day off, but I'm guessing the work week will be pretty relaxed. I always enjoy spending holidays with family.
I hope everyone is having a great Christmas season. Hopefully your shopping is done, you're curled up next to a warm fire, and you have a hot cup of cocoa in your hands!
The views expressed on this site are mine alone and do not necessarily reflect the views of Go Daddy Software, Inc. Heck, they might not reflect the views of anyone but me!
|Asleep at the Switch?|
|by Jon on Friday, October 26, 2007||file under: Off Topic|
hohle.net has been quiet lately... too quiet...
I can attribute that to three things:
First: School is in session and their is no end to work. I'm taking a graphics class (always time consuming and programming/math/processor intensive) at ASU and an Operating Systems class online through ASU.
Second: Between school and work, I've been trying to juggle even more programming projects. From Cocoa to PHP to Ruby and back again, I've been keeping myself steeped in code and having fun with all of it.
Finally: I've been moonlighting on a new blog... That's right. I've been writing for a different audience. Based on comments that people (including my wife!) had no idea what I was talking about, I have decided to primarily move technical posts over to Macsploitation.
Subscribe to the feed if you're interested in reading Mac and Mac Development related entries, but I'll warn you: it's going to get nerdy!
In other news, I've joined twitter (Kortney is rolling her eyes), so if you're have an account, drop me a tweet.
|The Talk Show and a D/Objective-C Bridge|
|by Jon on Tuesday, September 18, 2007||file under: Technology|
In episode 10 of The Talk Show, John Gruber hits the nail on the head, but this time it isn't apple related. He's getting caught up on Lost and has gotten to the second season and has the same reaction I had... not as good as the first season.
Speaking of John Gruber, he posted an link to D/Objective-C bindings on the Linked List today. I was introduced to D several months ago by a friend and was always interested in implementing something written in it but didn't really have a itch that Ruby or Objective-C couldn't scratch. Now it seems like I can have my cake and eat it too because Michel Fortin has released D/Objective-C bindings. Looks excellent: this means you can write Mac apps in D with full access to the libraries and APIs you'd typically be required to use Objective-C to access.
For those not in the know, D is an language similar to C which adds a full object oriented framework, C++/Java/C#-esque syntax, closures, namespaces, and garbage collection among other things. One of the best parts of the language is that it compiles down into a binary object which can be called by C libraries. D could potentially replace Objective-C as the Ruby of the compiled-language world.
|Two Kinds of People|
|by Jon on Monday, September 17, 2007||file under: Technology|
There are two kinds of people in the world:
Mark Cuban uses a phrase I've been telling people who haven't "switched" for years: once you go Mac, you never look back.
|by Jon on Monday, September 10, 2007||file under: Off Topic|
Kortney and I had a school packed weekend: she had to go to class on Saturday and I worked on a project and ingested a few episodes of Distributed Operating Systems with Partha Dasgupta. We've had Akeelah and the Bee sitting in its Netflix envelope for several days, but decided to pass it up for a few more episodes of Alias (we're on season two).
Saturday afternoon I started an experiment in cooking which concluded in pretty good — but not great — boneless ribs. They had a nice flavor, but it was too subtle, and required some spicing up on the plate.
We ran several errands, including some before church on Sunday. We've started attending a new church, which we're both excited about. Then something profound happened. As we were walking into church, Kortney drew a pointed finger across my chest. I followed the imaginary line from the tip of her extended index finger to an icon which I would normally point out to her: an Apple sticker.
This single, subtle action touched me in ways I can only try to enumerate. It showed me Kortney takes a genuine interest in my interests, even when they are beyond trite and trivial. It showed me how she'll go out of her way to put a smile on my face. It showed me that she'll lend an ear to my dissertations about the qualities of this or that, and despite her lack of interest, will listen attentively, and build me up in ways I don't deserve (I'm hardly qualified to wax intellectual about most of the topics I choose to step on a soap box about).
Not only did that simple gesture express all of those things, it also revealed something else: she's drank the Kool-Aid. :P
|80's Movie Quiz|
|by Jon on Thursday, September 6, 2007||file under: Off Topic|
It's been too long since I've seen Predator.
|"Holding a Program in One's Head"|
|by Jon on Friday, August 24, 2007||file under: Technology|
Paul Graham knocks one out of the park with Holding a Program in One's Head.
I've been trying to explain several of Graham's eight suggetsions to Kortney almost since we've been married. Not being a master of the English language, however, I've failed at each attempt. I've never chosen the words Graham uses, after reading each point, my gut jumped, as if saying, "YES! That's what I've been trying to express for years!"
By the end, I was almost cheering. You'll never guess what I've been spending the last two weeks-worth of nights at home doing...
|Newer Posts||Page 3 of 26||Older Posts|