Feed on
Posts
Comments

Java in Xcode

Well, I have had reason with my research to do some Java development. No biggie, Xcode supports Java too, right? Wrong! well mostly. This all came to a head when I downloaded the latest beta of Xcode (which I am only using because these fix a serious performance issue with the non-beta releases). After the last download, I found 4 distinct bugs in 2 hours, and I’m still finding them. Two of these are Java related, so I gave up, and looked for alternatives.

I found Eclipse very quickly. It is very nice, and runs circles around Xcode in terms of usability. It subscribes very heavily to the windows UI design, which I despise, but it works, which is more than I can say for Xcode. Just to summarize the things that Xcode does wrong:

  • The code sense completion fails all the time
  • Stopping the debugger never kills the java process (which must then be killed with a -9, causing sockets to not close nicely)
  • The compiler error messages are cryptic at best (such that if I didn’t know exactly what I was doing in Java, I’d never figure it out)
  • The debugger cannot find any source files unless I have previous set breakpoints in them
  • The compile process has no progress indicator, since it uses an external make
  • The compiler can get stuck in a circular dependency without any clue how to resolve it (I can reproduce this, 100% of the time, with code conforming to the Java spec).
  • A myriad of other little things

So, if you use Xcode for Java development, do yourself a favor and stop. I would even go as far as to say if you only use the dev tools for Java development, just trash them and save yourself several gigs of space. I think this just demonstrates that Apple doesn’t care in the least about Java, so don’t expect them to do anything in terms of support. I wish I was wrong about this, but I am afraid this is truly the case.

Well, I got to fiddling around with the existing passthrough on the AppleTV. I found where it works, and where it doesn’t. AC3 passthrough does work in .mov files with 48KHz files, of any bit rate. I did this with importing a .ac3 file into .mov, and adding a video track (ATV doesn’t like playing audio only files). I still need to test 44.1KHz, and 32KHz, but they are a bit harder to find. I have still to come across one of them.

My tests did turn up one interesting fact. I spent forever trying to figure out why an .avi file I had would refuse to passthrough using Apple’s method. I eventually concluded that the difference is that the brilliant people who decided to stuff AC3 into a format never designed to handle anything of the sort, also decided that it was acceptable to destroy the whole point of the format. AC3 is comprised of a frame of data, which is entirely self contained, and must be complete to decode. AVI (and other formats), have the concept of a packet of audio data for decode. Now the “brilliant people” decided there was no need to make the packet and frame have a 1 to 1 correspondence. Result, badly packetized AC3 frames, where several frames are in a single packet, and some frames span two packets.

Apple’s passthrough requires that a packet begin with a frame, and a frame not be split across two packets. I haven’t tested multiple frames in a packet, but I really don’t care to since the above is a deal breaker. This means that Apple’s passthrough will never work with AVI files, hence commit r858 to perian. Since I figured I had nothing to loose, I filed a ticket with Apple about this issue, number 5876598. Maybe they’ll care to fix it, but since it has no bearing on the consumer AppleTV, I doubt it. Since they haven’t done anything yet about passthrough on the desktop (see my other post on this topic), I doubt they will do anything about this either.

Guess we can always hope that they will surprise us all someday.

Well, Infocom is over and I am back home. While I was there, I often used my iPod Touch to do quick things on the net when pulling out the laptop would have taken too much time. The only issue is the wireless AP there required a web based login where one would have to enter in the email address they used to register for the conference. This can be annoying at best on the iPod when all I really wanted to do was look up something really quick and this stage takes 50-80% of the time.

Well, I noticed that the page doesn’t actually authenticate the email addresses, but instead just accepts anything that is entered in. I started entering in the letter, “a” and it took it. It will not accept a blank entry though :( So, what’s the point of having this at all? It wasn’t until the last days of the conference that I finally figured this out. The conference hotel changes for internet access, $12 a night, if I heard correctly. So, this login screen is to prevent the hotel’s guests from leaching free wifi off the conference, and thus off the hotel itself.

That raises an interesting trend that I have started to notice. Why is it that the expensive hotels (this one was was $300 a night) require you to pay for internet access, but the cheaper ones include it free with the room? I was at a hotel which was a fraction of the cost, and it’s free internet access was 20 times the speed of what I got at the conference! So, if you want a nice place to stay with internet access, this is one more reason to not pay too much for the hotel room, because you may end up paying more just to check your email. Otherwise, the good old fashioned post office starts to look like a pretty good deal. It isn’t as fast, but it sure is a hell of a lot cheaper.

The Hall of Shame

So, the good folk over at FFmpeg have stared a Hall of Shame. Basically, it is a page of projects which are using FFmpeg in direct violation of its license. The developers have asked that people link to that page, thereby increasing its ranking in Google. Well, here’s my part. Why should I care about this? Simple, if you look at the list of projects using FFmpeg, you will see Perian listed. Some parts of Perian rely so heavily on FFmpeg that it has an entire section in the code base. Going further, some of the Perian developers are contributing back to FFmpeg, so our copyright is being infringed along with many others.

Hopefully a page like this will help shame these people into doing the right thing, but its power is limited. Somehow I doubt that the latest addition (not yet on the list at the time of this writing) will care that much coming from the country that routinely treats copyright as little more than a hinderance that should be abolished (China).

Start of Infocom

Well, I am currently at Infocom. Getting here was a lot of fun because I had to wake up at 5am to drive to Houston and catch my flight here. In theory, I could have flown out of College Station, but all too often it is faster to drive to Houston than it is to fly. Then, when I got the rental car, I noticed it was made by Hyundai. I immediately remembered the old episode of Top Gear I watched the previous night where they “accidentally” called the Hyundai Accent the “Hyundai Accident.” I thought to myself, “did I get an accident?” I guess I should feel better that it was a Sonata instead, but the car still sucks. It has no acceleration, and if I hit the gas, I can count the seconds it takes for the idiotic automatic transmission to realize that it needs to downshift to actually go anywhere. Oh, and the engine has to be on to shift from drive to park. What engineer thought that would be a good idea?

Anyway, Phoenix is weird. I walked around outside, and it felt like 70 to me. In truth, it was 90. Without the humidity, it just doesn’t feel as hot. But I already hate downtown. Here are some things I noticed:

  • The lights are not synchronized so you get stopped at over 50% of them
  • Central street is under construction so it’s speed limit is 25, but the old 35 speed limit signs are not covered up
  • People are no where near as friendly as they are in Texas. This is evident by the fact that a police officer jumped in surprise when I said hi to her.
  • There are many people begging and loitering downtown
  • There are signs telling you that a sidewalk is suddenly closed without recourse for an alternate route

At least the conference is good. Hopefully my allergies don’t ruin it for me. I dislike dry climates.

Older Posts »