There have been a lot of posts in the last year about creating photos with custom shaped “bokeh” or circle of confusion. For those unfamiliar, that’s basically the way a photo blurs in the background. Turns out you can control the shape of the blur, and it works nicely with lights in the background. I wanted to try the technique recently, and started to think about building one of the fittings described in various DIY articles, when I realized I had a much simpler and more elegant (to me) solution already at hand. The homemade versions I’ve seen online consist of making a fitting out of black paper that goes over the lens. They all work great, but anything like that would be crushed in my backpack… err, camera bag.
Over the years I’ve somehow acquired a few sets of inexpensive lens filters – they’re often thrown in with kit packages of various types that online retailers promote. I had two identical unused Zeikos filter sets from who knows where, so I opened them up to see if I could figure out a way to make use of them. Luckily, it’s super easy. Here’s what I used:
Two UV filters – one stays intact, the other gets disassembled
Heavy black paper or plastic to cut the shapes out of
A fairly strong pointy thing – a small screwdriver should work fine
Two filters and a pointy thing
These filters are made up of three parts: An outer ring, the glass, and an inner ring that holds the glass in place. The inner ring screws into the outer ring. If you look closely, you’ll see a notch in the inner ring. I used my pointy thing to turn the inner ring to unscrew it. The first filter wouldn’t budge, but the second one turned easily. You have to hold the filter gently as you unscrew the inner ring, because the rings are delicate. You could easily bend them out of shape once the glass loosens up.
Inner Ring Notch
You only need the complete filter and the outer ring from the disassembled filter. Next, I used the outer ring to trace circles onto my black plastic sheet (I used a report cover – the type sold at Staples or Walmart for a couple of dollars). I traced inside the widest part of the ring. The circle you cut out needs to fit inside the ring, but be large enough that it doesn’t fit through the ring, since the ring will hold it in place. Before cutting out the circles I drew a few shapes in the center of the circles and cut them out with an X-acto knife. These shapes will be the shape of the bokeh in the photos. Once I had the center shapes cut out, I cut the circles out with scissors.
Cutouts
The size of the shape is important. If it’s too big, the shape will not be clear in the photos. I’m not positive, but I suspect the ideal size depends on the lens you’re going to use it with. I made mine for a Canon 50mm f1.4, which gives you a nice wide opening to work with. The star shape in the picture above is about 8-9mm (a little over a half inch) at its widest point, and that seemed to work pretty well. I made an arrow shape that is about 13mm (almost 1 inch) at its widest point, and that blurs out too much.
Once you cut out your shapes, put one of your circles against the glass in the intact filter, and use the outer ring from the disassembled filter to lock it in place. The whole thing then gets attached to your lens like any other filter. It can be slightly tricky to get the cutout shape to point the direction you want. I’m thinking of adding a small duct tape handle to make it easy to rotate the shape once it’s on the camera. You just have to loosen the outer ring slightly so the shape can move freely. Here’s the assembled unit:
So I got a call from someone needing a iPad app on short notice…
Building for iPhone/iPad/Android is something that I’ve been wanting to get into, but haven’t had the time to dedicate to learning because of a million other things. That’s always how it works I suppose. Anyway, a couple of months ago I got an opportunity and although I wasn’t really ready, I decided (was pushed a bit, actually) to take it on and see what could be done. Luckily, the app itself seemed very simple. I already was registered as an app developer with Apple from a while back, you just need to renew it every year. I had downloaded all the tools from Apple, although I had done almost nothing with them. So I went through some of the tutorial videos, read a lot and came to the conclusion that this was going to be a total pain in the a$$. And I really need to learn Objective-C.
Way too much time and learning for such a small project. So, lazy person that I am, I looked at other options for just getting this one out the door. I came across two promising options: PhoneGap and Titanium Studio from Appcelerator. Based on not much more than a few reviews and comparisons, I went with Titanium Studio. They’re both free, so no biggie if you dump the first one you try. And huge advantage in my book, they’ll both work on more than just Apple devices. Here’s a quick overview of my experience getting started…
Even though I read everything I could find and decided on one of the tools, I still had no idea what I was getting into. The problem (to me) is that there are many parts that have to be coordinated, and I didn’t understand which parts were which and how it all fit together. I didn’t realize when I downloaded Titanium studio that you still need Apple’s Xcode involved. Essentially, Titanium Studio is a combination of tools, some of which you have seen before if you use tools like Eclipse from Aptana. You code in the IDE, then test on the iPad or iPhone emulator that is part of the Apple toolset. Then you use Xcode and iTunes to get everything to the device for testing. At least that’s how it worked for me. I’m sure that all seems obvious to any Apple developer, but as a newbie it wasn’t clear to me at all.
Getting into the Titanium Studio IDE, setting up a project and testing it is not too painful. Within a day of installing, reading, trying out the sample apps they provide, and doing some rudimentary coding, I already had 75% of my first app done (keep in mind it was a very small and simple app). I probably had not built it in the most elegant way, but what showed up in the test environment was what the client asked for, which is a great start in my book.
The pain came when I had to actually get it onto a device for testing. All I can say is Apple’s process is tedious, and even though they give solid documentation and lots of info, it is still not very clear – to me at least. A major problem is that I’m one of those that tosses the manual aside and just starts hitting buttons. That won’t work with the Apple registration process unless you’re extremely lucky. It took me several tries to get everything just right, get my phone registered as a development device, and get it properly associated with the project I was building. It took a lot of jumping back and forth between Titanium Studio, Xcode and the Apple development site before it finally worked. My main problem was that it wasn’t clear to me what parts were responsible for what, so I had no idea where the problem was. I kept messing within Titanium Studio thinking I had done something wrong, when it turned out that I needed to be messing with the Apple developer site because the registrations weren’t correct yet. It literally took me 3 or 4 times longer to figure all of that out and get it working than it did to install the tools and build the silly app!
Thanks to all the other people on forums that had similar problems, I puzzled through it. There was no magic answer, sadly. My solution was a combination of bits and pieces of what other people came across. They had other issues I wasn’t seeing, some that sounded scary compared to mine. After lots of reading, resetting things, removing and re-adding information on the Apple site, I got it installed so I could test on a real device. And it worked! wOOt!
Getting it onto someone else’s device for testing… well, a whole ‘nother level of complexity. Actually, once you get the basic idea of setting up the test devices and projects on the Apple dev site, it’s not too bad adding more. The problem is that now you have to get device info from anyone else who is going to test, register those devices with Apple and the project, and then go through the install with them. Which takes a few tries.
The second app went much quicker, but it’s still sticky for me. All too new still. I’m not 100% sold on Titanium Studio, but it was quick to get started and it all made sense to me. Ok, most if it made sense. A few little niggles here and there, like any development tool.
All in all, a pretty positive experience, but Objective-C and the standard Apple tools are the way to go for i-Only development. So my current plan of attack is to keep using Titanium Studio for the time being, because I have more iApps to work on right now, and as I can I’ll keep diving into Objective-C and see what I can do there. My thought is that I’ll eventually transition to using Apple’s tools exclusively for their devices, but that will depend on the market. Right now iPad is king in the market I’m doing most of my work for, so that’s an easy choice, but it’s always prone to change.
Waiting for the Ocean is a song I wrote a while back, during GW Bush’s first term. I heard him speak about global warming, and how it was unproven, even though the facts – actual measurements – were already pretty clear by then. I was disappointed that he blew off the whole issue, and knew it would be like a lot of important issues that are avoided or ignored for one reason or another. My mind wandered as it usually does, and I came to wonder how does one person deal with the climate change issue, assuming the worst of the worst possible predictions come to be? If the water is going to rise, the obvious answer is to mover to higher ground. Hence the song.
Most clients and potential clients that contact me have a pretty solid idea of what they would like to do, and how much they want to spend to do it. We spend time up front to flesh out ideas and explore possible solutions that the client may not have considered, or maybe isn’t even aware of. I love the start of new projects – new projects are all about possibilities, and I am a 100% a possibilities type of person. But once in a while at the start of a project the spider senses start to tingle…
Long before I went freelance in the mid 90′s, I acquired the mantra “Don’t take on bad business.” That phrase is my “tingle.” Early on I had a handful of specific things that I kept an eye out for, but over time it became more part of intuition rather than conscious thought, and I stopped thinking about the specifics so much. “Bad business” is a project that has a higher risk of failure than I would like to take on. I’ve been fortunate over the years to have had only a couple of projects go seriously awry, but they were incredibly painful to go through. I find that it takes time to recover mentally, and you lose money to boot. It is absolutely acceptable – no, it’s imperative – that freelancers and agencies turn away bad business. It can be difficult to turn away potential income, especially if work is slow, but the downsides are simply not worth it.
I read an article on Mashable by Brett Miller that does a nice job of explaining many of the potential problem spots. The article focuses on software development, but the points hold for any project that a developer, designer or agency takes on. We’ve all come across most of the issues highlighted in the article, but one stands out for me:
Too many cooks – this is the “Deal with Decision Makers” item on Mr. Miller’s list, and is by far the number one concern for me. It has manifested itself in a variety of ways, but there is one project kickoff scenario that terrifies me: If I walk into a conference room with a big group of people, my warning bells immediately go off. If during the meeting it is clear they don’t agree on what the final product should be I’ll hear everything out, and if a common vision can’t be agreed on by the end of the meeting, they’re not ready for me yet. I advise them to work together to define what they need and then bring me in. Any potential project that brings in a designer or developer that has various factions in disagreement is simply not ready for development yet. There are certainly options for getting involved and helping drive the group to a set of requirements, but I have found that too often the client then thinks “real work” has started (and the project clock is ticking), when in fact from my perspective the project can’t start prior to requirements definition.
Unclear requirements is probably the second most critical item on my personal “Bad Business” list, but that can often be worked through with a client. Mr. Miller is right in pointing out that time is valuable, so if I’m getting involved in helping define requirements, I need to see some money up front. That does two things: First, it ensures the client has some “skin in the game” – they are much more likely to follow through on a project that they’ve already invested in, and second, it lets them know that my time is valuable, and that defining requirements and specs is an important part of the work. A freelancer is a professional, and should be treated as such.
Occupy Wall Street has been going for just over a month now. I went in to NYC a couple of days in weeks 2 and 3, and talked to people, checked things out and took pictures.
Even though the protest is entering its second month, there is still a lot of misinformation out there. Some of it is clearly purposeful, while much is simply a lack of facts. Funny how many people are willing to express an opinion with only the flimsiest of actual information to back it up.
A couple of things surprised me: First, the group is amazingly organized for such a loose knit gathering. Schedules, teams, people working together, and people helping each other. That was great to see. I also hadn’t expected the range of people that I found. I expected younger people and students, but there are a lot of older people, and people with a wide variety of backgrounds. Some I spoke to were very knowledgable about specific areas of concern, such as banking and the finance industry, corporate influence on political campaigns and our government, monetary systems and the fed, and a host of other topics.
I certainly do not agree with everyone I saw or spoke with, but I can say that everyone was great to talk to and very reasonable. Almost all of the people I’ve heard or read bashing the protesters as deadbeats, hippies, dirtbags, socialists, communists, anti-capitalists, etc., have not actually ventured inside the park to speak at length with people, and worse, some have cherry picked individuals that represent (imo) the worst of the pack. No different from picking out a racist with a grammatically horrible sign at a Tea Party event. Does that represent all Tea Partiers? I don’t think so.
One of the points that is missed most often, and I think purposely so in many cases, is the idea of Occupy as a “liberal” event, sponsored, staged, and directed by some group out there. From what I saw that couldn’t be further from the truth. Although I agree that most attendees I met were on the left side of the spectrum, there is definitely not a “left-right” bent to the messages coming out. The primary messages are much bigger than left-right – they are concerned with a variety of fundamental problems currently driving our system.
The interesting, and disappointing, thing to me so far is that the outcomes the OWS protesters want would help the vast majority of Americans, regardless of political leanings. The overall result would be a greater voice for the individual people of this nation, and a better opportunity to achieve the “Amercan Dream.” Nearly everyone I spoke with is very much pro-capitalism, and pro-individual freedoms, yet somehow that seems to be lost on the majority. I’ve seen many of the “53%” responses, and it’s clear that a very high percentage of those posting actually support the argument of the 99% – they’re working more hours, more weeks, more jobs, and have less to show for it than they should. The perception of the 53% group is that the OWS protesters are whiners who want something for nothing. Some do I’m sure, but nearly all I spoke to just want to do good work, get paid what they’re worth and have a real say on how things are run. Pretty universal and not too much to ask for, really.
I’m working on a new site for a partnership that I’m working with to develop distributed learning projects. It’s decidedly not ready for prime time, but it’s alive at least. This will change significantly once we come up with a logical structure for the site and the content is completed.
Update 02/12:
I decided the look wasn’t bold enough color-wise, and I needed to make some structural changes to fit content and ideas other had, so I’ve updated the look.
There’s nothing more frightening than receiving an email from a friend with the subject “HELP! My Daughter has been Kidnapped!”
I should have posted about this earlier, but neglected to. A long-time friend from Boulder, Colorado has been going through an incredibly difficult time. Her adopted daughter was taken away and her ex-husband – who has a history of abuse against both the daughter and mother – was given full custody. The courts justified the action by claiming the mother was guilty of something called “parental alienation.” Up until that time I had never heard of parental alienation (PA), and I assumed that the courts would always do what is in the best interest of the child. I did a little research because I really didn’t understand the situation at all. There is a lot of information on both sides of the issue, and it took a while for me to sort it out and to understand how it was being applied in my friend’s case.
Essentially, PA is one parent trying to program or brainwash the child against the other parent. I am certain that parental alienation takes place – that would surprise nobody who has ever experienced, heard or read about terrible custody battles that often take place. The problem is that PA seems to have become a weapon in the custody lawyer’s arsenal, and has clearly been misused within the court system in order to help vilify one parent, and give the other parent the upper hand in child custody cases.
In the case of my friend there was real fear involved. She and her kids went through some terrifying times before the divorce was finalized and the ex-husband moved out of the house. I know that for certain because I heard about many of the episodes in near real time. Given the level of fear and real danger that was involved, is it possible that the mother told the child some things that are “against” the father? Of course! Should that be allowed as part of a charge of parental alienation against the mother? Obviously not.
As is often the case, the bottom line is money. The father has it, the mother does not. So despite support and documentation from child services and the daughter’s therapist, the mother lost the custody battle. She’s trying to mount an appeal, but can’t afford lawyers, so that’s where a group of her friends jumped in to try to help. For my part, I set up a web site and created a short video that tells an overview of the events.
Updated the site over the last two days. It’s been a lot of years since I did anything on the site. The content is lacking, for sure, because that’s the part that takes so darn long to get together. At least I have places for everything and I can add/edit as I get things ready. No pages are totally blank, so that’s good. I just put up a few things I had laying around that were easy to access.
The new look for marinich.net
The main page is a JQuery thing, and I put in my first us of the Canvas tag on the screen shots page. It’s a little jerky on slower machines, but not terrible. I tried it on a low end Gateway touch screen machine, and that worked pretty well, except it really wants you to turn off the system-wide gestures, because it gets a little confused understanding whether you want to expand one of the images or the page within the browser window. I also tried it on an older Windows machine, and the page actually ran very well on that machine using a mouse. I do have a ton of graphics memory in that box, so that may help.
The rest of the site is pretty basic, but more to come as they say. Hopefully. I noticed some oddities on different sized screens, so I’ll have to at least take care of that.
It’s been a while now since the Flash vs. HTML5/CSS3 brouhaha really got going when Steve Jobs declared Flash dead, but the topic jumped into my head again this week when I used Flash for parts of a video project I’m working on.
Inverse kinetics was the feature that brought me back to Flash for this project. It’s a huge help with some types of animation, and features like that, along with it’s powerful ActionScript 3 language, are one reason Flash will be around for a while.
Now, Steve Jobs wasn’t entirely wrong, and anyone who paid attention to the industry knows that Flash had been taking a beating for years by web designers and developers – primarily because so many people use Flash in so many wrong ways. The classic Flash-only web sites, for example. Steve Jobs just brought new weight – not to mention a legion of followers – to the argument. And mobile certainly opens to door to a whole host of changes that are coming.
To be fair though, just about every complaint about Flash has been addressed in one way or another – either by Adobe, or by the huge community of Flash-related developers. I agree with the people that say avoid Flash on the web for many of the common uses we see – menus and navigation, for example. HTML/CSS/JavaScript is a far better choice for most of those features. Video playback is a tossup right now as far as I’m concerned. Yes, you can do it without Flash, but it harkens back to the old “Browser Wars” days when you had to specially code for each browser. A pain I certainly can do without. I’m sure that will get worked out eventually, but until it does Flash is just as valid as any other method – it’s easier for me to implement, and it works for all of my clients – the only exception being the iPhone/iPad audience, which is not too difficult to work around.
So, while I agree that Flash having a reduced role on the web is a good thing, I also think that Flash is far from dead. And if the past several years is any indication, I suspect that Adobe and the Flash community will push Flash into new areas before long.
Like any tool, the key is using Flash for what it’s best at.
Post a time lapse video of this year’s Five Boro Tour. Other than getting stuck on the BQE for a near eternity, it was a fun time. Be sure to get started early. Last year we got a much earlier start and it worked out much better overall. Seems the BQE traffic was unique to this year though.