Tag Archives: career

A Dream Come True

The JavaScript OSA component implements JavaScript for Automation. The component can be used from Script Editor, the global Script Menu, in the Run JavaScript Automator Action, applets/droplets, the osascript command-line tool, the NSUserScriptTask API, and everywhere else other OSA components, such as AppleScript, can be used. This includes Mail Rules, Folder Actions, Address Book Plugins, Calendar Alarms, and Message Triggers.
Apple: Javascript for Automation Release Notes

This is a dream come true for me; really heady stuff. Applescript has been foundational to my career, but I never once—not once—liked the syntax nor the environment. Giving Javascript a first-class implementation could be very beneficial, I think, as there are a hell of a lot more Javascript developers than there are Applescript developers. The problem still exists with wonky scripting support in applications (I’m looking at you, Adobe with your fancy-pants JSX). Perhaps by removing the Applescript barrier to automation will bring some new talent into this niche area that has been too specialized for its own good. Up until now, the Yosemite update was pretty “meh,” but now I’m excited.

U.S. Digital Services Playbook

Today, too many of our digital services projects do not work well, are delivered late, or are over budget. To increase the success rate of these projects, the U.S. Government needs a new approach. We created a playbook of 13 key “plays” drawn from successful best practices from the private sector and government that, if followed together, will help government build effective digital services.
U.S. Digital Services Playbook

Three of the plays—1, 6, and 7—focus on people alone. Solid advice for any project.

Photoshop’s Bloat Exemplified

Everything wrong with Photoshop exemplified in one update:

pointless_photoshop_update

While I can understand Adobe needs to keep their software fresh to maintain sales, this is just plain old bloatware as far as I am concerned. I don’t need 3D modeling and manipulation in Photoshop. I need a scripting API that actually works so that I can create truly integrated workflows to save me time and money. This 3D update is instead a complete waste of my time and money.

“You don’t choose what will work. You simply do the best you can each time.”

From a blog post by Neil Gaiman in 2009:

Yes, it’s unrealistic of you to think George is “letting you down”.

Look, this may not be palatable, Gareth, and I keep trying to come up with a better way to put it, but the simplicity of things, at least from my perspective is this:

George R.R. Martin is not your bitch.

But beyond that initial blast is this really great gem that I think applies to any creative endeavor including programming:

Sometimes it happens like that. You don’t choose what will work. You simply do the best you can each time. And you try to do what you can to increase the likelihood that good art will be created.

And sometimes, and it’s as true of authors as it is of readers, you have a life.

I have started more projects than I have finished, each for their own reasons. “Finished” is entirely subjective, but in my case it would likely mean “used by someone else” and/or “used in day-to-day production by me.” Some unfinished projects get revisited, but most don’t, again each for their own reasons. Outside of important deadlines, not getting hung up on whether something is finished is important, at least for me. What is just as important, however, is learning something new from that project, including how not to do something. Each project I started has been a learning experience of some kind, so even the unfinished ones have value.

Having a deadline is another matter entirely.

Sleep as a Competitive Advantage

Too many of us continue to live by the durable myth that one less hour of sleep gives us one more hour of productivity. In reality, each hour less of sleep not only leaves us feeling more fatigued, but also takes a pernicious toll on our cognitive capacity. The more consecutive hours we are awake and the fewer we sleep at night, the less alert, focused and efficient we become, and the lower the quality of our work.

The research is overwhelming that the vast majority of us require seven to eight hours of sleep to feel fully rested, and only a small percentage require less than seven. The problem is that we kid ourselves. “Like a drunk,” the Harvard sleep expert Charles A. Czeisler wrote, “a person who is sleep deprived has no idea how functionally impaired he or she truly is. Most of us have forgotten what it really feels like to be awake.”
NY Times: Sleep as a Competitive Advantage

For me, nothing beats a twenty minute nap in the afternoon, maybe thirty minutes. Anything more than that is of little to no benefit. But that twenty minutes can make all the difference in the world for the rest of my day.

I think sleep is really only part of the solution to good productivity, and that exercise and a reasonable diet are needed as well for sleep to be its most effective. I say, “reasonable diet” in that there only a relative few out there that eat truly good all the time; some foods aren’t good for the waistline, but they are good for soul and are therefore irresistible.

I have been working on my health for the past several weeks by working through an exercise regimen from Nerd Fitness. I work out five days a week on average, for an average thirty minutes a day. It’s a well packed thirty minutes prioritizing intensity over time, and within only a couple weeks I found benefits in regards to how I feel overall. Even those nights where I only could get five to six hours of sleep I felt better than before I started working out.

Facebook Paper

Paper presents user updates as “stories”: captions overlaid on large-format photos, auto-playing videos, and even long or short text screeds all in an edge-to-edge, full-screen format. The default “section” in the app is the user’s Facebook news feed, but users can pull new sections up from a set of cards, such as “Headlines” or Tech,” and browse between them in one pane.

“Each section includes a rich mix of content from emerging voices and well-known publications,” Facebook says. This gives the biggest clue to the real intended creators for paper: brands, be they news outlets or celebrities.
Ars Technica: Facebook’s Paper is Facebook without the Facebook

Oh, look, yet another proprietary digital publishing platform targeted at publishers. How quaint. Here, let me add this to my pile of fifty or so I have over here.

“And in truth, I’ve never known a man worth his salt who, in the long run, deep down in his heart, didn’t appreciate the grind, the discipline. The difference between a successful person and others is not a lack of strength, not a lack of knowledge, but rather… a lack of will.”
Vince Lombardi

Studies in Semicolons: The Parable of the Carpenter

The carpenter understands the value of something he works with every day, and that’s why he spends so much money on the hammer. But he also understands that value is a double-edged sword: he’s committing to the product he knows, that is reliable.
Studies in Semicolons: The Parable of the Carpenter

Replacing the subject of the punchline with other tools in which I have invested makes this parable applicable to more areas than I care to think about. Interestingly enough, Microsoft Office is not one of them.

Why I rail against Adobe: I care.

Pretty much all of my blog posts about Adobe are critical, if not outright negative. This is because I care about the environment in which I work. My line of business, I am all but compelled to work with Adobe products. They are a major focal point of my development efforts, and are something with which I have had a relationship for over twenty years now.

Publishing technology has few alternatives. Before InDesign, QuarkXpress was the dominant application for page layouts. When InDesign CS2 was released, a gust of fresh air blew into the state of page layouts, and Quark quickly was given a run for its money, quickly outpaced by InDesign’s innovations. There were others, like PageMaker and FrameMaker, but they had their specific markets and requirements that generally didn’t meet book publishing’s general needs with the same ease as Quark and InDesign.

For a case in point, one need only look at the link manager in both applications. A “link” in this case is a piece of art placed into pages, or an XML file used to populate a template. A lot of time has passed since I worked with Quark in depth, but I remember Quark’s link manager being very linear with a poor UI and file selection UX. InDesign’s link management became everything that Quark’s wasn’t and kept innovating. The link manager is not “sexy” in the sense that it is an easy-to-implement, eye-popping effect for a client to see, but it is a focal point in the application for the page builder, who has to manage anywhere between a handful to thousands of links in a single job. A designer cannot build a design without using the link manager; it is like needing food to survive. With Adobe Creative Suite 4, my company made the decision to have all new titles be made in InDesign and have yet to change that policy. I learned how to script on that version and have built up a substantial library of code since.

Recent releases of the Creative Suite, and the newly released Creative Cloud, have left me wanting for better Applescript support, to the point where much of my code is going to be rendered obsolete within a year at the rate things are going. In my team’s recent purchase of Quark licenses—purely for legacy file support purposes, sadly,as we have a soft spot for Quark since some of us built are careers on it—the link manager was the first feature we looked at. It was immediately apparent that their link management had not changed one iota since InDesign’s first release, and quickly went back to work with InDesign, disappointed that nothing new was on the horizon for us.

There is one promising open source page layout application, but since scripting support appears to be even more dodgy than InDesign’s, there is no point in even downloading the application. “Contribute to the project,” you suggest? Noble, but there is no way I can fit in free development work in between The Day Job, school (I get 10-20 hours of homework each week), and family. So, I keep slogging with InDesign.

With Photoshop and Illustrator, things are more promising with there being a number of good alternatives, but without that page layout to tie it all together, I have to pick my battles elsewhere. I’m really not keen on supporting whatever arbitrary language a given application supports in addition to Applescript and Javascript. Wrangling those two is enough work as it is.

Really, the only way I can get out from Adobe’s mire would be to change my careers away from anything remotely design-related, which wouldn’t be all that bad, but that would really mean changing industries, which is something that is, personally, unappealing to me for the time being. I have my reasons, but this is not the forum in which to discuss them.

What this means is that, in the end due to industry and personal constraints, I cannot avoid Adobe, and will not be able to in the foreseeable future. While I am here, working with their apps, I have a desire to see them improve, or at least be better maintained. Adding in 3D object creation into Photoshop is not what I consider a good use of anyone’s time. So, I criticize.