Mar 24 2008

madhouse failure

Tag: Ranting and ReflectionsJoe @ 8:14 pm

I haven’t posted again about the madhouse chili because, well - frankly, I screwed it up. It was bad to the point of pitching out the whole batch.

I got the ingredients to have another go, and this time I’m planning things a bit more. The failure mode was overcooking. The aroma was good, but the flavor had leeched a bit, and worst of all - the meat had been cooked to the point where I had this terrible chalky flavor and texture across the whole batch. It was teh suck. It was also the excuse for some pizza this past weekend.

So I’ve got another chunk of meat, more BAKON!, garlic (OF COURSE!), and other goodies (namely 3 kinds of beans) - so I’m ready to tackle round two. I’m not sure which evening or morning I’ll start the process though, because it’s shaping up to be a busy week, but it’s in the plan.

And if I screw this one up, I’ll never admit it.


Mar 21 2008

madhouse chili

Tag: Ranting and ReflectionsJoe @ 3:53 pm

The house may soon be uninhabitable - I decided that today was the day to start making what I’ll call “madhouse chili”. I’m labeling it “madhouse” because it’s kinda crazy. It’s a super-messed up version of chili con carne with three different beans tossed in. If my eyes are correct on the sizing, the amount being created may well last me through a good seven meals.

It is, without a doubt, the kind of chili that I couldn’t make for Karen. She hates beans. I don’t. Hence the uninhabitable remark…

Oh - and the rules for my madhouse chili:

  1. there is no such thing as too much garlic.
  2. beans are tasty
  3. meat is good
  4. chili peppers are yummy
  5. BAKON!

This will be good!

ps: thank god for crock pots and slow cookin’!


Mar 20 2008

screencasting with ScreenFlow and VMware Fusion

Tag: Geekstuff, Ranting and Reflections, macJoe @ 2:44 pm

I’ve decided to take a page from some of the open source goodies I’ve seen and start using screen-casting as a means of documenting and explaining some things at work.

Most of what I do at work happens on Windows though - so I’ve arranged an interesting setup. I have ScreenFlow capturing my desktop while I’m running Windows XP within VMWare Fusion. That works incredibly well, along with ScreenFlow’s “crop screen” feature, to narrow down the focus to exactly what I’m trying to show.

I do rather wish they exported to flash video (like Camtasia) but that isn’t a show stopper for me. ScreenFlow is 1/3 the price, works on the platform of MY choice, and has a bunch of incredible features that I haven’t even started to touch.

In fact, I’m working up some simple “This is how to use…” videos for ReviewBoard to go along with a presentation I’m going to be making about it next week. I’d love to share the videos, but unfortunately that’s showing way more work details than I think my company would be happy with me sharing.

I bought the license for ScreenFlow myself though… so maybe I’ll start screen-casting some other interesting tidbits.


Mar 19 2008

Cherry Blossoms

Tag: Ranting and ReflectionsJoe @ 4:57 pm

Saw this on the way to work, and couldn’t resist taking a quick photo.

cherry blossoms


Mar 18 2008

my first computer

Tag: Ranting and ReflectionsJoe @ 8:56 am

Wow, someone was talking about first computers online, and I found a link on Wikipedia to the TRS-80, my first computer. (I had a Model I)

I was sort of jealous, to be honest, of all those other folks that had Apple II’s later, but I did love that thing. Use the hell out of it too. I played Pyramid 2000 - my first experience with Zork like games, learned to program in BASIC, and went more than a little crazy with BBS when I dumpster dived and repaired a then amazing Hayes 1200 baud modems. I recall that 300 baud (which many BBS’ still used at that time) was slow enough that I could read the text as it was streaming out onto the screen.

Most of what I did, I think, was write. I wrote a hell of a lot - huge stories that are no doubt lost to time now. I wore that keyboard down to nubs, and I sure as hell became a touch typist through the process because you couldn’t read the keys when I was done. I don’t recall when we got it, but I used it right up until I went to college - when i got my first Mac (a “Fat Mac”). Let me tell you - that was a hell of a change too. Haven’t looked back from Mac’s since, even though I’ve since used damn near everything else in the marketplace at work from one time or another.


Mar 16 2008

Getting a grip on Erlang

Tag: Geekstuff, macJoe @ 3:49 pm

I was sort of curious about Erlang for a while now - just because it was touted a bit as a high performance concurrent programming language. It’s a world of different thinking - the closest I’ve really come into it was some of the concurrent python concepts with Actors and Channels (from Stackless or Kamaelia). But getting a grip on it was always kinda tricky - the docs and such were a bit hard to get into and get any sense of.

Well - that part is all solved with Bob Ippolito’s presentation at C4 last year. You get get his presentation Exploring Erlang on Viddler as one of the many awesome talks that Wolf gathered, encoded, and has made available.

If you’re interested in checking out Erlang, take an hour and put yourself in a quiet room and check out the video. I’d say quiet room not because it’s hard, but because Bob goes over a lot of breadth and depth in a relatively short timeframe, and if you’re distracted, you’ll miss something good.


Mar 12 2008

Syncing data from your iPhone app to a desktop… and other “iPhone SDK bugs”

Tag: Geekstuff, iphone, macJoe @ 3:24 pm

I was reading Paul’s post on iPhone SDK bug reporting and sort of pondering that list.

I’m not sure I care specifically about a bug for being able to run a background application so much as I want to be able to get application events when my application isn’t active. At least for my needs - I could come up with some specific reasons for wanting a background app on the iPhone, but moving that processing/event waiting stuff off the Phone seems like a pretty reasonable way to go to me. More expensive surely - you’ve got to have something running somewhere - it’s easy to put that on an iPhone (at least technically), but you’re using potentially using power and dealing with memory pressure when you don’t need to on the device.

But it was the bug entitled “Allow iPhone applications to access the host computer when docking” that really caught my eye (Bug ID #5788803). The iPhone and iPod touch has bonjour, and straight ole TCP/IP network access available to it. I thought back to various conversations about hybrid applications, and then I recalled that Gus even stuffed a whole web server into VoodooPad Pro. I don’t know if he just linked in something like lighttpd or if he wrote his own http request handling classes (I’d easily believe either - I know he’s basically done both in the past for different projects). Take that concept a little further, and I could see how you might have a paired application that enabled you to sync data down to the Mac over Bonjour and maybe http. Okay - that’s a hell of a workaround because Apple isn’t enabling a path through Sync Services, which would make a lot more sense (and be a lot less coding) - but the idea is intriguing. Since VoodooPad Pro has bonjour enabled already, it wouldn’t surprise me if Gus fiddled together a “read only” VoodooPad client. That is a little weird since you can already just point Safari at VoodooPad Pro, so maybe that’s a dumb idea after all.

I can imagine a whole class of what Apple’s iPhone HIG is labeling “utility applications” that would take advantage of periodic data updates from syncing with a desktop client. Data you couldn’t or didn’t want to share across the web that you wanted to have in a quick read-only format.

I’ve even been debating that process myself - I have some relatively static data that I’m planning on using for a little application. For my first iteration, it won’t need to change and re-releasing the application with updated data looks to be the easiest path when I need to do that. On the other hand, to make it more generic (assuming I follow through with a “more generic” path), I think it would be really handy to be able to pull an update, or allow a user to provide custom data. It’s that custom data from the user track that would really benefit from a Sync Services link of some form.

Update:

Holy cow - I just noticed that Jon Wight of ToxicSoftware has included TouchHTTPD, which looks to be right along these lines of something to be used to help transfer data into and out of the iPhone.


Mar 10 2008

Karen has a blog!!!

Tag: Ranting and ReflectionsJoe @ 6:45 pm

It took her leaving home for 8 weeks, but Karen’s started a blog to keep in touch with friends and family. If you’re interested, check it out at http://baublicious.blogspot.com.

Now I’ve just got to get her hooked up with a Flickr feed for the photos…


Mar 08 2008

bugreport for iPhone SDK: Enable remote events to 3rd party applications

Tag: Geekstuff, iphone, macJoe @ 12:46 pm

I’m mentioning it here in case anyone else would like to reference/jump on this particular bandwagon. rdar://problem/5788673:

Summary:
Please enable some mechanism for 3rd party applications to receive events or run in the background to poll for events from remote sources.

Notes:
In the initial release of the SDK, there does not appear to be a mechanism for an SDK application to get activated and receive events in the background (or remotely). For some application scenarios (reminders, instant messaging, alternate reality gaming, etc) it would be nice to enable an interrupt if the user choose to accept them - either in the style of an SMS message highlight on the screen, or the activation of an application as in the case with an incoming call to an iPhone.

These are enabled for Apple applications (mail, SMS, and incoming phone calls being examples). I would like the capability to receive an event through some channel, or to be able to poll for events in the background and activate my application.

The Android SDK reportedly enables a similar SDK functionality using the XMPP protocol (albeit requiring login to Google’s XMPP service - http://code.google.com/android/reference/com/google/android/gtalkservice/package-summary.html). Enabling some mechanism to post and forward events to iPhones, potentially with URL’s to activate local applications, would be very beneficial.

 

Update:

I added the following detail to the bug report - since folks outside Apple can’t see it, I wanted to share it:

I’m specifically looking for a way to get events from external to the iPhone and it’s environment to my custom application. Either via pushing into some queue like mechanism that perhaps apple runs or enabling the application to periodically request data from a remote TCP/IP interface. I’d be using a web application to send the data - likely with a REST interface and the data represented in a JSON of XML format.

My specific desire if for the iPhone to receive events from outside the iPhone and it’s environment (i.e. on the internet) and activate my application if there is anything in the queue for it. In my case, I’d like to be able to get alerts from a monitoring application very much akin to SMS, except have my application intercept that data and provide a more appropriate/informational interface to the message coming in. I can currently receive SMS messages or emails with some amount of data, but an immediate visual representation of the system outage and related metrics would be a far superior user experience.

I thought this might be accomplished by supporting a generic internet event passing mechanism like what is supported with XMPP (small messages basically “stored and forwarded when requested”). To send an event/message to my application, I’d simply submit it to a central XMPP server with a designated address. The iPhone would be the recipient of the address, and assuming that a pub/sub mechanism was working efficiently, it would get the message with little significant delay.

Another option, not as desirable, that came to mind is to poll a remote URL periodically to determine if any data is available. I don’t know what pub/sub options are available, but I’m hoping that something is possible with Apple and ATT’s infrastructure. The alternative of polling seems like it would have potentially significant power draining consequences.

I wondered if the SMS mechanism could be used, the same mechanism to determine that voicemails exist, or perhaps a different mechanism altogether.

If a polling solution (like the original email functionality - poll every 5 minutes sort of thing) is available, then i a central combined queue of events would make sense - as that could be shared across any number of applications. That way the potential for 5 different applications, all polling different URLs or sockets wouldn’t present such an enormous drain the battery.


Mar 08 2008

Java on the iPhone - coming from Sun…

Tag: Geekstuff, iphone, macJoe @ 11:46 am

AppleInsider is reporting that Sun will make a Java available for the iPhone… following a report on InfoWorld where Eric Klein (VP of java marketing at Sun) was quoted on a number of details - mostly blather that rolled up to “If Apple ain’t gunna make a JVM for the iPhone, we will”. 

That is a dramatic change from the past decade of Java on Apple products - where Sun has been releasing JVM’s and JDK’s for Linux and Win32, leaving Apple to following along with it’s own development effort. I can’t even really fathom why Sun didn’t make Java available on MacOS X, but they haven’t. And from someone that has been working with mostly Java technologies for the past 10 years, this lagging setup has been a real pain in the ass. Finally, Sun is stepping up and asserting that they’re going to make a JVM for the iPhone. I wonder if they’ll pick up doing a JVM for MacOS X too?

With the iPhone, the shoe is now on the other foot for the Sun/Apple relationship relating to Java - instead of Sun treating Apple as a second class citizen when it comes to Java, it’s the other way around. The anthropomorphic voice of Apple to Sun in my head says “You wanna see Java continue? Put up or shut up! It’s not doing us any damn good.”

Since I read and wrote about Daniel Steinberg’s article “Java to the iPhone: Can you hear me now?” back in January, the idea that Java isn’t really happening on the Mac has just continued to resonate. There are really no java desktop applications (yes, I know you can prove me wrong - it’s a hasty generalization, but a reasonable sterotype). Where I mostly see Java being used on the Mac is with developers - folks coding with Eclipse and making Java server based code. And even then, it is typically being deployed (quite reasonably, I think) on Linux servers. The only real downside is that it’s getting damn tricky to enable those Mac based developers to continue to do that when there isn’t a released 1.6 JDK for the Mac. That isn’t a lot of pull from a customer base, and precious little incentive for Apple to continue developing Java for the Mac, let alone to spend the developer time to port it over to the iPhone and make even a subset of Java run there. Google’s Android hasn’t even gone with the J2ME standard. It is instead implementing the Dalvik runtime, which is reportedly more sane with memory usage and power consumption.

It doesn’t come as any surprise to me that Apple has taken the “Nope, no java here - ain’t worth the time” road. I suspect they are right. While it would potentially open up the market to more developers, the popularity of the iPhone makes me think that it may not even need those J2ME developers to see some world class amazing applications come available. Shoot - Apple Apple basically committed a denial of service attach on itself with the SDK announcement - interest in the SDK is clearly popular enough right now without needing to include J2ME in the game. The iPhone will draw it’s own crowd, and with it’s already significant market share in the 4th quarter of 2007, it’s got enough “go juice” that it really doesn’t need to do a whole lot of work enabling even more sandboxes. Shoot - most of the indie developers I know are looking at the iPhone SDK and either making something now, or starting to poke and see how hard it will be to port some of their desktop technologies into this platform. In a lot of respects, this is a whole new era for mobile development - desktop developers are serious about implementing something, and Apple’s providing the tools to enable it. And there are some damn fine Mac desktop application developers out there.

I expect that Sun is seeing this as a significant threat to the continuation of Java on mobile devices - more piling into the competition along with WinCE and Flash. Especially now that Sun has decided to compete with the Flash juggernaut with their own JavaFX, they’ve got to be sensitive about J2ME and the iPhone. With Klein asserting that Sun will be making a J2ME for the iPhone, I’ve got to wonder if the Google dudes aren’t crankin’ away at a Dalvik VM implementation for the iPhone as well.

Now that I’ve had a chance to read through the iPhone OS Programming Guide (hard to link directly to this document due to Apple’s continuing stupid and fundamentally shortsighted NDA setup - but it’s available at http://developer.apple.com/iphone/), I’ve got to wonder if a sandbox within a sandbox is really going to an efficient setup. That’s what a JVM would be, what Flash is, etc. While the iPhone supports some pretty serious compute power, I’m not sure that it is really quite up to par with supporting multiple VM sandboxes. I suspect that’s still in the laptop or desktop computer realm, and Moore’s law hasn’t yet enabled it at the size of an iPhone.


Next Page »