With computational photography, smartphone these days produces seemingly good looking photographs. Major phone brands try to convince you that their phone cameras can produce pictures that are as appealing as those coming out of cameras with professional specs.
Do we need a dedicated camera?
Given that the best camera is the one you have with you, I have been considering whether I will stick it out with just my smartphone camera (which I always have with me) or whether I should replace my dedicated camera.
I had not made up my mind completely yet, but my beloved Pentax K200D camera saw less and less action in recent years to the point that I even left it at home for recent holiday trips. So earlier this year I gave it away, along with the Sigma DC HSM 30mm/f1.4 lens that has always accompanied the K200D, to a friend who I know can make better use of them than me.
I saw pictures taken from the latest smartphone cameras and there were many cases where they were really good, but there were many other cases where they were not up to my standard. I still was not convinced I can survive with just smartphone camera.
About a couple of months ago I bought a new smartphone and last weekend I took some pictures at a dinner. I forgot about them until today as I browsed through the photographs and I thought: not bad, not bad at all.
Amongst the pictures that came out good, I knew it would be better if I work the crop factor a bit. Sure enough, after cropping, the image came out cool.
However, during the process I noticed something that people may miss, if they do not have experience shooting with dedicated camera + good optics.
The computational bokeh from the smartphone fails miserably during the transition from in-focus to out-of-focus area. Give a close attention to the boundary of the neck and the hand.
Interestingly, although not a complete surprise, the computational algorithm can fail to kick in when it got confused.
On the next picture, pay attention to the area between the hand and the neck and the small area between the thumb and the other fingers: the algorithm missed them and did not generate the bokeh effect.
I cannot compare the same scenario taken with a dedicated camera, but here is a flower taken with the Pentax+Sigma at f1.7.
Bokeh represents areas where physically, light enters the lens as out of focus, indiscriminate to the fact it is a small area or large area. And in the real world, out-of-focus is also dependent on physical distance, so the bokeh effect varies based on the location of the objects.
I am happy with my smartphone camera, but this post shows that for certain kind of images that I am accustomed to make, I should buy a camera.
Recently I needed a server for my personal project and I compared the services from various cloud providers. Specifically, I compared the global footprints of their data centre locations.
Cloud providers offer different services; the big providers obviously offer more services than the smaller providers. But for this project, I have simple needs, so any one of them can serve my needs. However, I have one want, which is data centre location; I wanted it to be located in a specific geography.
So I studied the following providers to see where they have data centres: Ali Baba, AWS, Azure, Digital Ocean, Google Cloud, Heroku, Linode, Tencent, UpCloud, and Vultr.
“We don’t want a thousand features. That would be ugly.
Innovation is not about saying yes to everything. It’s about saying NO to all but the most crucial features.”
~ Steve Jobs
“[Innovation] comes from saying no to 1,000 things to make sure we don’t get on the wrong track or try to do too much. We’re always thinking about new markets we could enter, but it’s only by saying no that you can concentrate on the things that are really important.”
~ Steve Jobs
When I moved to this platform, I turned on its email subscription feature. When I posted something, a subscriber would get an email from a @writeasletters.com address. A regular email address, instead of a “no-reply” address.
However, I just found out that, as of current platform capability, if a subscriber reply to the email, then the reply actually never reaches me. And both the subscriber and I would not know.
And supposedly this was by design.
I think this is counter-intuitive. At the very least, they could have sent an email bounce.
This is not the user experience I like, so I am turning off the email subscription. If you subscribed in the past, my apologies for the inconvenience.
If they improve this someday, maybe I will turn it back on.
“Whatever happens, not everyone will understand your intentions, possibly your genius will not be recognized within your lifetime. But we did not choose the life of the artist for fame and certainly not for fortune – But rather, a dedication to aesthetic beauty and self expression.”
~ Dominic Tarr
I received this from Joyce Wycoff a long time ago. It's interesting that what many people claim as “innovation” would not qualify as innovation according to below.
by Joyce Wycoff
“All growth is a leap in the dark, a spontaneous, unpremeditated act without benefit of experience.” Henry Miller
I was looking for a cloud data storage solution recently and researched it on the internet. I read a number of product reviews with pros and cons. And then I read some users comments that provided some real world rebuttal of the reviewers assessments. These users used the product within their use cases longer than the product reviewers who used the product only a short time for the sole purpose of writing a review article for the internet. The perspectives from other users put the product reviews into context whether they are relevant or not for my use cases.
Context matters a lot, but context is often overlooked
When we want something, we research it to find the best product / service that we can buy for the specific use case. We buy it and then sometimes we discover afterward that the best product / service has other costs aside from the money we pay for it.
It is not necessarily wrong, if best performance or best value or best whatever is the one and only goal. But it is important to understand well: are we absolutely sure there is no other goal that we ought to consider within the context of the big picture?
We ought to avoid “local optimisation” that can degrade the overall expected benefit.
For example, let us say that we have two inter-dependent jobs that need to be done by two different tools and we bought the best tools we could find for each of the jobs: tool A and tool B. Great, so now we will get the maximum benefit when we put these two together, right? Not so fast. It depends on how well these two work together in managing the inter-dependent aspect of their jobs. We need to understand the short term and long term implication whether problem or additional effort or cost may ensue out of the integration between A and B.
Considering the full context, we ought to assess if A and B are still the tools of choice for the jobs, or whether alternative options will integrate more optimally to yield a better overall benefit.
Assumptions can mislead
This one is obvious, but also often gets overlooked. We want to be explicit about all our assumptions and understand how each assumption affects our decision making process. If our assumptions change, the optimal solution may change also, because what we need may turn out to be different.
As for my cloud data storage search, I challenged my assumptions and in the end I reframed my “jobs to be done” differently from when I started my initial research. By questioning my assumptions of what I need vs want, I reconsidered a solution that I excluded previously. This solution is not the technical best because it does not meet a few of my criteria, but it fits perfectly one criterion: simplicity.
Optimise for total benefit
The optimal tool balances trade-offs to maximise the total benefit.
“The whole is greater than the sum of its parts.” Aristotle
In my cloud example, the best tool is not the simplest and, for now, simplest is what I need. Therefore the optimal tool that I bought, in this case, is not the technical best, but I am happy with it, because it gives me the maximum total benefit.
P.S. May I interest you to read my older post: Best practice can be wrong?
A team's mission is not more important than the product that the team is building. But the mission is more important than introducing any product.
If we stumble upon a new product that has the potential to be a rainmaker, but it does not fit the mission, then a decision is needed.
When a team launches a product that does not fit the mission, that means they have a different agenda that is more important than “the mission”. In other words, “the mission” has stopped being the team's mission.
Change the product or change the mission (or adjust both). One is not more important than the other, but the product should be the manifestation of the mission.
“Programmers waste enormous amounts of time thinking about, or worrying about, the speed of noncritical parts of their programs, and these attempts at efficiency actually have a strong negative impact when debugging and maintenance are considered.
We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%.”