Fuji X-Pro1 User's Guide shows promise · 130 words posted 22 hours ago

As much as I love the X100, Fuji released the camera in a state that felt like “beta” and never brought it up to production quality. For example, there are four ways to insert the battery and only one of them works. Also, Fuji ships the battery charger with a small plastic insert that seems expressly designed to be lost.

But it looks like Fuji listened to these complaints when designing the upcoming X-Pro1. The newly published user’s guide (PDF) shows they took time to get some of the little details right:

Takeaway: ya gotta sweat the small stuff. I can’t wait for this camera.

Image Credit: Fuji

* * *

Superfastmatch on OS X · 82 words posted 133 days ago

Sunlight Labs and Media Standards Trust have released Superfastmatch, a tool for detecting similarities between texts.

My iMac is about two years old, with a quad core and 12GB RAM. Superfastmatch still taxes my machine. One minor quirk: the thread_count flag doesn’t seem to actually cap the number of threads, at least according to Activity Monitor.

But I’m happy to report it runs right out of the box on OS X. What a great tool for comparing texts. Thanks Sunlight Labs!

Comment

* * *

Best reddit thread ever · 12 words posted 257 days ago

“What’s going on in the background of my girlfriend’s voicemail message?”

Wow.

* * *

AirPort Updates fixes AirPort Extreme VPN Problems · 44 words posted 1409 days ago

You might miss it in the Time Machine hubbub, but Apple has quietly fixed its VPN issues in the latest “Time Machine and AirPort Update.”

I can now connect to my VPN even over the Airport Extreme. Run Software Update to get the fix.

Comment

* * *

How to connect OLPC XO to WPA Airport Extreme · 85 words posted 1493 days ago

As others have noted, the XO doesn’t support WPA out of the box. A kind soul has posted a shell script to connect to a WPA Wifi network.

Connecting to an Airport Extreme base station is simple: make sure your wireless is set to 802.11n (802.11b/g compatible) with “Wireless Security” set to WPA/WPA2 Personal.

When you run the shell script, the SSID is the same as your wireless “Network Name.” The Pass phrase is your “Wireless Password.” And WPA Version is 1.

Happy surfing.

Comment

* * *

Quick and Dirty MySQL Diagrams on OSX with EOModeler · 510 words posted 1695 days ago

Whenever I take on a new project with an existing database the first thing I like to do is generate an entity diagram of all the tables. On OSX you can buy or download any number of third party packages to model tables, but here’s how to do it with software you already own: WebObjects and EOModeler.

The executive version:

Create a MySQL database with Foreign Key relationships; then install the proper JDBC driver for MySQL; finally point EOModeler to your database to generate the diagram.

Although these steps are covered in various places on the web, here’s the whole thing step by step in detail. I assume you have MySQL 5 and OSX 10.4.9.

cd ~/Desktop/mysql-connector-java-5.0.6 sudo cp mysql-connector-java-5.0.6-bin.jar /Library/Java/Extension [Enter your password when prompted] jdbc:mysql://localhost/yourdatabasenamehere

Schweet! You can save the generated diagram and reopen it in Xcode. You should end up with a diagram that looks something like the image below, foreign keys and all. Tip: if you end up with am archipelago of unconnected tables, you’re probably working with MyISAM tables instead of InnoDB.

Questions? Post them in the comments here. Just don’t expect any replies Sunday night. I’ll be respecting the Bing.

Comment

* * *

ColdFusion 8 hosting on HostMySite · 56 words posted 1704 days ago

HostMySite is offering free ColdFusion 8 beta hosting for as long as the beta lasts. Amazingly, the plan even includes a 600MB SQL Server database. Plenty of room to kick the tires on someone else’s machine—although HostMySite and Adobe must both have real confidence in the stability of CF8 to offer a deal like this.

(via fullasagoog)

Comment

* * *

Interview: Dave Hoff and Anthony Webb of IMified · 571 words posted 1795 days ago

Dave Hoff and Anthony Webb recently launched IMified, “an instant messenger buddy that works across all major IM networks and offers access to a growing number of web applications.” While I’ve worked with the ColdFusion Event Gateway to build automated bots in the past, I’ve never seen the Event Gateway used so well for such broad purposes under a heavy load: IMified provides a single chat interface to Basecamp, Remember the Milk, Google Calendar, and more. I asked Dave and Anthony to talk about their service. And if you haven’t checked out IMified yet, it’s worth your time.

since1968: IMified is one of those great ideas that seem obvious only in hindsight: an IM content aggregator. How did you come up with the idea?

IMified: The idea for IMified came about when I was looking for an easier way to post todo’s to my Basecamp account. I found myself neglecting to add stuff to my projects because the process to do so was too cumbersome. Basecamp is a service I use a lot but doesn’t really warrant me leaving it open in my browser all day. I use IM throughout the day for staying in touch with colleagues and family. It’s always open and available, yet unobtrusive and was a logical interface to “fire and forget” simple data entry tasks.

since1968: Rails gets most of the “Web 2.0” attention. How did you decide to use ColdFusion?

IMified: Choosing anything other than CF as platform wasn’t really an option. Anthony and I are CF developers. When the concept for IMified was finally laid out, ColdFusion became the logical option due in most part to the excellent Event Gateways that are offered out of the box in the enterprise edition. The event gateways allow us to tightly integrate with the IM networks we connect to.

since1968: You say on your blog that your initial growth was almost accidental. For all we know you guys may be running a higher load on the CF Event Gateway than anyone else. What is your load?

IMified: Before launching IMified we did some research and tried to find others out there making use of CF’s Event Gateways under a heavy load. We didn’t find much information to go off of and were really surprised to see that the event gateways were so under utilized. We are handling a very heavy load and CF has handled this load like a champ! Our down time to date has been due to problems with some of the IM networks we run on and one out of control log file that grew to 30gb. In just 3 weeks of operation, our users have completed over 60,000 tasks through IMified!

since1968: What pitfalls did you encounter with the Event Gateways?

IMified: Honestly, none. There haven’t been any surprises as of yet and we don’t expect to see any soon. We’re really impressed with their performance, stability, and ease of use.

since1968: Do you have plans to monetize IMified?

IMified: Yes, we most certainly do. Someones got to pay for all this bandwidth! In the next few weeks we’ll be launching the next phase of IMified that we feel will really change the way people think of IM. We want IMified to be your go-to buddy when you need to get something done at your desk or on your mobile. Somewhere in there will be a business model. Hint hint… API.

since1968: Thanks for your time.

Comment [5]

* * *

The Newest Garrett · 27 words posted 1807 days ago

Our first child, a boy, arrived five hours ago in Washington, DC. I’ll be offline for a few days whilst studying the intricacies of burping and napping.

Comment [3]

* * *

Mark Hamburg Interview: Adobe Photoshop Lightroom Part 2 of 2 · 1691 words posted 1807 days ago

Last month I spoke to Mark Hamburg, Adobe Fellow, former Photoshop architect, and founder of the Adobe Photoshop Lightroom project. In the first half of our interview we discussed Lightroom’s lengthy gestation and innovative UI. Here’s the second part of our talk.

since1968: Lightroom’s first beta was Mac only. Thanks for the Mac love—but why did you choose Mac first?

Mark Hamburg: I’m primarily a Mac user, and as it happens a lot of people on the initial team were primarily Mac people. We’ve now got some hardcore Windows users on the team for balance. We started out doing what was much more a research project, though, and it seemed sensible to only focus on doing one platform first.

We actually spent a while at one point starting to get things running cross-platform and that managed to sidetrack most of the project. The lesson there was that when you are still figuring out what to build, you don’t want to let yourself be distracted with coming up with cross-platform architectures too early. You want to keep cross-platform in the back of your mind, but the most wonderful cross-platform strategy without a product to build on it doesn’t really get one anywhere.

Another thing that influenced us in this regard is that Photoshop started its current code base in the early 90s. Though it has evolved over time there are certain assumptions built in very deeply that reflect the state of the art at that time and the Photoshop team is having to do a lot of work to move beyond them. When we started what would become the Lightroom project we wanted to focus on building for “modern” operating systems. Mac OS X by that point had been out for a while and was more or less settled. On the other hand Microsoft was busy still just talking about Longhorn, so Mac OS X was in a better position for us to start on when looking for a modern OS.

The irony here is that Lightroom 1.0 ended up being built for XP rather than Vista, and we’ve already felt some development pain from that.

Finally, we knew that in reaching photographers it was really important to get to the influencer market and that market was largely a Mac market. If you go through and look at how the market breaks down among photographers, the influencers tend to be heavily Mac—not entirely, but heavily. The mainstream working photographers frequently are on Windows. In the “prosumer” market Windows still dominates but there’s a mixture. Knowing that we wanted to start with the influencers, we needed to be on the platform they were going to be on.

since1968: Lightroom is 40% Lua. How did you select Lua? Which parts of the program are handled by Lua?

MH: I foisted Lua on the rest of the team which actually at that point was very small. But I had discovered it just in reading some of the mailing lists I was on—I think it was actually a garbage collection mailing list that led me to it.

I wanted to build an app that was heavily scriptable and was looking for a good scripting language to build in and got the pointer to Lua. I’d actually read one of the first papers on Lua several years earlier but hadn’t pursued it because it hadn’t been relevant to what I was doing. At that point Lua was also much more primitive than it was when we picked it up.

Lua has an appealing balance of simplicity and power. It’s small, fast, and easy to embed. It also has a very straightforward license associated with it. It’s very much like Scheme language I like—but without a syntax likely to make people go running for the hills. So there were a lot of things.

I looked at some other things. I looked at JavaScript: Adobe had an internal implementation of JavaScript but it wasn’t as easy to do drop-ins and all the things we wanted to do in the Lightroom project. I looked at Python, I looked at Ruby. Some things were going to be bigger, slower, and had licenses that were harder to figure out. Lua just happened to fit really well.

So what we do with Lua is essentially all of the application logic from running the UI to managing what we actually do in the database. Pretty much every piece of code in the app that could be described as making decisions or implementing features is in Lua until you get down to the raw processing, which is in C++. The database engine is in C; the interface to the OS is in C++ and Objective C as appropriate to platform. But most of the actually interesting material in the app beyond the core database code (which is SQLite) and the raw processing code (which is essentially Adobe Camera Raw) is all in Lua.

since1968: What development environment do you use to write Lua? LuaEclipse?

MH: We have our own development environment. On the Mac side we have a fairly sophisticated IDE that was developed internally as one engineer’s first project when he started on the team. We have a Windows IDE as well. It isn’t as sophisticated as the Mac IDE. I think the people who are doing their primary development on Windows are generally either using the Windows IDE or they’re editing the source code in Visual Studio.

since1968: Whoa—Adobe is known for building or acquiring some famous IDEs: HomeSite, Flex Builder, Dreamweaver. Did you look at your stable before building your own? Any change the Mac IDE will evolve into a future public project?

MH: Tim Gogolin, the engineer who built the IDE, gave a demo at the Lua Workshop in 2005 and had lots of people drooling. We’ve contemplated on occasion whether there was a good way to release it to the public, but it’s pretty tightly coupled to the rest of the Lightroom implementation. It will, however, definitely be included when we do a serious SDK for Lightroom.

since1968: Lua’s not such a common scripting language. Apart from a legion of World of Warcraft modders, do you have to grow your own Lua talent?

MH: Yes, we have to teach people Lua. The benefit is that it’s fairly easy to learn. One of the people who joined the team was an avid scripter anyway, but his comment coming in was that Lua was easier to learn than JavaScript.

since1968: On the Mac, did you use LuaObjCBridge or write your own bridge to Cocoa?

MH: We wrote our own bridge.

since1968: Let’s talk about extensibility. Adobe will release an SDK sometime after 1.0. Data from C is directly accessible in Lua’s userdata type, so presumably Adobe could really open up Lightroom to be extended as far as a developer can take it. Will developers be able to write extensions in Lua?

MH: [Laughing] Developers will have to write their extensions in Lua. At one point—and it probably complicates the app a little—there was probably some notion that we’d provide ways to let people write things in purely native code as well. But I think at this point you will have to write at least part of your logic in Lua for knitting into the rest of the system.

When people ask “What do I do for Lightroom development?” I tell them “Go out and learn Lua. Hack World of Warcraft until we’ve released an SDK.”

Any APIs we publish we’d like to commit to supporting long term. In getting a 1.0 out as we’re sorting through some of the feature set there’s a fair amount of churn on the APIs that we have. Putting out an SDK means we need to start freezing those a lot more, so that’s essentially the delaying factor. After version 1 we get to go through and sort through and say “Yes we can commit to this. We can publish it and put it in the SDK.”

since1968: What’s the coolest Lightroom feature that people haven’t noticed or hasn’t been mentioned in the blogs?

MH: One of the things people haven’t entirely gotten is some of Phil Clevenger’s working from the “inside out” behavior. It takes time to really grasp how to tune your workspace, but once you do, you can get a lot of stuff out of the way.

One of the really surprising features for me in Lightroom came out of the Print module. It starts with doing the basic grid work, but combining extreme grids with the “zoom to fill” options start to push you toward discovering new way of looking at your images and new layouts that wouldn’t have been expected on our part. The grid goes in as “OK we’re dealing with contact sheets and so forth” but what comes out of it is that it actually becomes a viable creative tool as well. That’s somewhat reflected in the 4 Wide templates, but I don’t know that people have really picked up on the fact that if you start pushing the settings in the Print module you can get fairly creative effects out of what otherwise people might have thought of as a contact sheet generator.

The Split Toning controls in Develop actually are fun to use on color images as well as gray scale. They were created for creating duotone-like effects but they actually can be used in interesting ways to enhance color images as well. They’re not particularly good for correcting images. I’ve had people try to push them to correct color casts in the shadows and they’re not really built for that. If you want to put a color cast into your shadow they’re a great tool for that. Not so good if you want to take one out.

Finally, something that applies only to 1.0 and not Beta 4. I’ve been doing more dust spotting work on my images lately, I have to point people to the benefits of zooming to 1:1 (or higher), starting at the top left corner, and then just repeatedly pressing page down. Watch what happens when you get to the bottom of the column.

since1968: Mark, thanks for your time.

MH: You’re welcome.

Comment [3]

* * *