Image for post
Image for post

One of the core concepts of becoming a better photographer is understanding how light hits the sensor and how you, as the photographer, can manipulate that artistically. This article is going to assume that you have little to no working knowledge of DSLRs. If you are more of a visual learner check this out after you’ve read the article.

The formula

Image brightness ∝ Scene illumination × Subject reflectivity × Lens aperture area × Shutter open time × ISO sensitivity.

or a tad simplified

Image brightness ∝ Lens aperture area × Shutter open time × ISO sensitivity.

Easy enough, right?

Preface

There are multiple different “modes” DSLRs can be put in (aperture priority, shutter speed priority, full manual, etc). I’ll briefly touch on those towards the end of the article and what situations I personally use them for. …


Image for post
Image for post
San Diego Heatmap

After posting the heat map of San Diego Covid-19 cases online I realized a lot of you had questions, so I figured I’d write a quick how-to on creating this heat map.

Step 1:

Find the data. San Diego county gives out a daily summary via zip code in PDF form, others may do this as well. Without this it won’t be possible to do a heat map of cases by zip code.

Step 2:

Now we need to translate these values into a spreadsheet. My suggestion is these 4 columns:

Zip, Latitude, Longitude, Cases

You’ll want to copy the zip code into the first column and copy the number of coronavirus cases into the fourth column. …


Image for post
Image for post

This will be a tutorial on how to connect Spotify’s SDK. This was an overly complex journey for me, so hopefully this mitigates issues you may be having. I don’t normally write Swift (or spend time in iOS land) so bear with me if you see nonconventional practices and feel free to comment on them! I’m going to water this down as much as possible so people can go through step by step at a slow (or fast) rate.


Image for post
Image for post

If you haven’t heard lately, GatsbyJS has picked up a ton of steam. We recently, at work, migrated from a React on Rails project, to a ReactJS/S3 project to a GatsbyJS project. If you’re interested in some of the effects and the why you can check out this post here.

The point of this post isn’t to elaborate on GatsbyJS as a core framework, if you’re interested in learning more about them, I’d suggest starting at their docs here. The tldr; is that GatsbyJS is a SSR React project that renders html/css. The main use case is for SEO ability (imo). Today I’m going to dive a little further into some of their more prevalent Browser APIs and when things get called and use cases for such. …


In October of 2018, we realized that our ​marketing website​ needed some serious love to meet our standards for a scalable and effective digital front door. At the time, the site was being served from a legacy Ruby on Rails server hosted on AWS. The loading time for each page took several seconds on desktop, and was really hurting on mobile, where our analytics and current trends were showing an ever increasing share of use. The development process was not efficient, involving an engineer to create an HTML template in Ruby for each new page to be rendered and served by Rails. …


Image for post
Image for post

For most web applications Search Engine Optimization (SEO) doesn’t really come into play, however my current company wanted to double down on our SEO while not sacrificing engineering efforts. Here’s what I learned from leading a team while we increased our SEO metrics exponentially in less than nine months.

The Problem:

ReactJS is a Single Page App (SPA) javascript based language written by Facebook. For those that don’t know SPA’s are lightning fast, extremely responsive and dynamically render on the fly without the need to refresh. This leads to issues that you have to solve as crawlers are just now able to execute javascript. We were rendering fine using Fetch by Google but as soon as we checked Bing and others we realized that they thought we were serving them a blank white page (or that’s what they thought). …


Image for post
Image for post

In the summer of 2017 I attended a coding bootcamp in San Diego. Having done some programming in college I’d thought this was a good advancement for my career, being one year in the workforce post-degree. I’ve given it a few years to reflect on what this point of my career meant to me and the benefits and repercussions of my decision. My experience may be biased, and you should take this with a grain of salt, however I’ll try to be pragmatic with my reasoning.

There are a ton of free (or very cheap) resources out there.

Everybody knows bootcamps aren’t cheap. They average around $10,000 and if you need to factor in living expenses can climb up to $20,000. I paid ~ $16,000 for mine. The thing is, there are a ton of free, or cheap, resources out there that you’ll gain more knowledge from. Code Academy, Udemy, and FreeCodeCamp then I did in my bootcamp for less than 1% of the price. The trade-off here is that you lack the other “benefits” you get from a coding bootcamp (I’ll delve into that further down). …


Image for post
Image for post

If you’re looking for a way to submit forms with no backend setup, look no further than Netlify’s form submission feature. On their free tier you get 100 submission per month (aggregate of all forms) and can add one of three options: an outgoing webhook, slack integrations and/ or email notifications. On their paid plan you have access to Zapier which can integrate with a plethora of web apps. Given the large amount of web development resources readily available, I had a difficult time finding a good tutorial on how to accomplish this. …


Image for post
Image for post
Nikon D800 + Tokina 16–28 2.8 @ 2.8 15seconds 5000 ISO

There is no better feeling in photography than getting the perfect shot. When it comes to Mother Nature things like that aren’t exactly easy to control. My goal is to explain everything from planning to technical execution in an effort to give you every advantage when going for that perfect shot.

About

Garrett Hughes

Avid Outdoorsman/Photographer | Software Engineer garretthughesphotography.com | garretthughes.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store