Image for post
Image for post
Photo by Saketh Garuda on Unsplash

It’s an Application Programming Interface.

Ok, but what *is* that?

A quick article for new programmers, and those who are just curious. 👇

APIs are actually quite easy to understand.

An API can be thought of as the middleman of communication between two systems. APIs allow devices, web servers, and software to talk with each other. They are the drivers of many of the digital systems we use today.

An example of an API being used: The weather app on your phone retrieving the most recent weather report.

Another example: Pay with PayPal integrated with an eCommerce store.

The underlying…


Image for post
Image for post

Exordium & Etymology

Asymptotic notation describes the runtime of an algorithm based on the increasing input size of the algorithm. Asymptotic notation is important in computer science, as it helps engineers gauge the efficiency of the algorithms they write. To get a clear understanding of asymptotic notation, the etymology of the two words can be seen below. (You can use the etymonline.com tool to dig into the history of words).

asymptotic — “having the characteristics of an asymptote,” 1670s, see asymptote.

asymptote — “straight line continually approaching but never meeting a curve,” 1650s, from Greek asymptotos “not falling together”. (Wikipedia definition: an asymptote…


Image for post
Image for post
Photo by Enrique Ortega Miranda on Unsplash

Exordium

In software development, coupling refers to the degree to which modules are connected. The word’s etymology goes back to Latin and means ‘the joining of one thing to another’ or ‘fastening together.’ So, when thinking about coupling, think about how objects are connected to one another.

Along with some other concepts, coupling was invented in 1968 as part of Larry Constantine’s ‘structured design.’ Structured design focuses on mapping out ‘good’ programming practices aimed at maintainability and adaptability.

Tight and Loose Coupling

Coupling can either be tight or loose — sometimes referred to as high or low. Modules are considered tightly coupled when they depend…


Image for post
Image for post

What is a Dependency?

In software engineering, there is a complex-sounding technique called dependency injection that aims to help organize code modularly by creating objects that depend on other objects. The objects that other objects depend on are called dependencies.

The use of dependency injection helps solve the problem known as ‘spaghetti code.’ If you haven’t heard of this term, it refers to software that is ‘held’ together by bad design and architectural planning, in which each object is connected to one another. This makes codebases hard to maintain. …


Image for post
Image for post
Photo by Donny Jiang on Unsplash

Exordium

This week’s blog post is a non-technical one, focused on a ‘growth mindset’ topic. I’ll be talking about life principles, how to set them, and why it’s important to live by them. I’ll also be breaking down my eleven life principles.

What Are Life Principles?

I describe life principles as principles that are truly and deeply important to you as a human. They are principles that you won’t merely budge on — and they make up the core of your character. These things are different for every single human, though some of us may share similar principles.

I’ve seen life principles labeled as things…


Image for post
Image for post
Photo by Tim Hüfner on Unsplash

Exordium

Thank you for stopping by the Rusty Nail Software dev blog! In this post, I will be showing you how to create a UITableView that has spacing between the cells. I came across this design as I was recently working on a client’s application. I wanted to get away from the basic table view look and use something tailored more toward the UI/UX of the client’s app. For those who work as freelance software developers — versatility in design is essential because not every client wants the same thing.

To accomplish a clean table view design with spacing between the…


Image for post
Image for post
Photo by delfi de la Rua on Unsplash

Exordium

In this post, I’ll be taking you through the process of integrating Core Location and MapKit. We will be piggy-backing off of the series started here. You can find the code to this tutorial on GitHub.

Core Location is a part of Cocoa Touch — and is the framework used for obtaining user location details. The location details can be used in many different ways — and how you use this information will depend on your app’s functionality. Whether you’re building a food delivery app, concert booking system, or a tool to find the nearest bathroom — Core Location is…


Image for post
Image for post
Photo by Element5 Digital on Unsplash

Exordium

In a previous post, I wrote about setting up Core Location in a UIKit application. I covered adding the usage descriptions to the Info.plist file, requesting location authorization, and pulling the location from the CLLocationManager. If you need some help setting up Core Location in your UIKit app, take a look at that post: https://rustynailsoftware.com/dev-blog/core-location-setting-up-core-location-with-uikit.

In this post, I’ll be going over how to implement CLGeocoder — a class in Core Location that helps developers produce human-readable versions of geographic coordinates in their iOS apps. I’ll also briefly cover the CLLocation object, as I failed to do so in my…


Image for post
Image for post

Exordium

Core Location is Apple’s native framework for obtaining a device’s location, altitude, and orientation. Core Location is also how a device interacts with iBeacon devices. All of this is very cool technology and can be utilized in amazing ways. For example, I have used Core Location to create a pothole reporting app, RoadHazard. I really view the mobile device as a way to integrate technology with day to day human life.

Core Location collects data via onboard components such as Wi-Fi, GPS, Bluetooth, magnetometer, barometer, and cellular hardware. …


Image for post
Image for post
Photo by Richy Great on Unsplash

Exordium

Git has a feature that displays a user’s contributions (based on commits that fall into a specific set of requirements) on their public profile. I think this is great, as it gives the public (as well as potential employers or clients) a look at your programming activity. Only public contributions are shown by default, but there is also an option to account for private ones. While working on a client project, I recently ran into an issue where the work I was pushing to GitHub was not showing up on my profile.

A Simple Fix

Andrew Lundy

Sofware Engineer 💻 Bee Lover 🐝 Team Human 🌎

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