Saturday, October 22, 2016

We're modernizing again.



I spent a good bit of time and a great amount of thought into building an Access database to keep track of all of our stuff. Stuff. I know that's not very technically savvy. And there's a good reason. I have guess at most of it. Learning as I go along. I was pretty sure that I needed to keep track of money, time, customers, inquiries, equipment, and some other things that I haven't thought of yet. I'm pretty good at building databases, too. Since I have a background in Information Systems and I currently work as a Simulations Operations guy the database is pretty easy.

That's not to say that I didn't run into problems. I'm not willing to buy the new version of MS Office because there are a number of other programs that we use for document processing and we have multiple platforms in the house. And since I don't really want to buy anything new I didn't get to use the cool new connectivity features. Strike 1: I had to maintain everything because it the database lives on my computer. I was able to export all of the cool report in PDF and send them to Marie. But she didn't read them or tell me when something happened that needed to be recorded. Like an inquiry or consultation.

Not knowing what I need to know from the beginning is a pretty common problem in database development. It seems pretty easy with relational data to add a field here and there and to make modifications. But, who want to do that all the time? Strike 2.

I can't think of a third strike but there was one.

Anyway, I got the notion to look at Honeybook. I got it from Marie, as it turns out. Bit U looked at it and they have some of the features that I couldn't get at. And some that I didn't know I needed. Can I sum this up by saying that these guys have thought way further ahead of me in this photography business management? They have. And it is pretty good.
I recommend it.

Friday, August 12, 2016

Getting the Back Office Ready for Wedding Season



Marie is busy editing the summer wedding work and blogging her work. She's the face; if you sit down with her for a consultation then you'll want to hire her to take your photos.  That means it's my job to make sure everything else works. I think it's a fairly easy formula that I follow:
  1. Pay Attention to the Analytics
  2. Keep Fresh and Relevant Content
  3. Always Update the Plan
Looking into the analytics we can tell that the majority of people that spend any time on our website is female and between 18-34 years old. That's exactly where we wanted to be when we were writing our business plan last Fall. Our website is attracting the right attention and it is producing a fair amount of feedback. It is safe to say that we are appealing to the right audience. Now we just have to step up our game.

We ended up with some fresh content through the spring that looks great on Lininger~Rood.com. We did some absolutely magnificent events and met some great couples. Every single one got us closer to having a well balanced portfolio to start this year with. We never focused on the content. It was more about telling the stories of our customers most intimate moments, capturing them in time, and allowing them to share their moments with the world. Their story is the why.

Once we had the why, we started working together to get the how and what. And we're still at it. I mean, the reality is that Marie takes pictures. She loves it and she would do it even if there was no business. But to be in business and provide a value to the customer we had to work backwards from their story to the right pictures. The why doesn't change, but the how and what will keep changing as we evolve and as the market changes. That change is what make us continue to search for the most right answer. 

The Lininger Rood Wedding page.
It holds true that the mobile site produces more traffic than the desktop mirror, but not as much as we expected. It is fairly typical for us to maintain separate site that look and feel the same but are optimized for the platforms that they run on. ShowIt makes it pretty easy to maintain both mobile and desktop sites. We did create new pages styles on the mobile site for Wedding and Family events. The interface looks great and packs a lot of content in a small space. It take some guess work to figure out what the right content is. We guessed. But I think we guessed right enough.

Advertising is an art if you don't have a huge budget. No homegrown startup has an ideal advertising budget so it's always important to figure out how to read the analytics and respond somehow. We started with paying Facebook, Google, and the Knot with targeted adds. Eventually, the numbers showed that Facebook wasn't getting business conversions so we dropped the paid adds and promotions. Free exposure from Blogger, Instagram, and Facebook brings it home just fine. The tools will tell you what is working, not what is not working. So, it takes some experimentation. I cover all of this in my book so I won't go too deep there. What I found out putting all of this together is that art doesn't have a set way to create success. We will keep changing the way we advertise, and the way we promote, and the way present our work. 

So, that leaves us thinking about what we need to take us into the next year: new equipment and services. Equipment upgrades are always in order. We planned to spend as much money as we could keeping our inventory up-to-date and ahead of demand. Marie loves the Nikon D750 and it does a great job for the services that we provide. But it may be time to look for a second camera body. The logical choice is to get another D750 so that we don't have to learn a new set of features. That will provide a good back-up for Marie if something happens goes wrong with her camera and gives us the option to provide an in-house second photographer.

We have been acquiring lenses as the need arises. There are so many different options that we have to prioritize the lens to the service. Our next lenses will give us greater ability to get close-up shots in more detail. Light kits, reflectors, and remotes are always options for spending any additional cash influx.

New services are exciting. They are exciting to think about and exciting to try to create. This business will demand certain things but other things require the photographer to provide. Marie has started building books of her work to showcase her work. We haven't started selling photo albums but I suspect that the year will build into that as we get to some of the more exclusive venues on the calendar in the upcoming year.

Python script runs the world!
One of our couples asked for a photo booth at their reception. Naturally I jumped at the opportunity to develop something that we can use. It gets me out of the shadows. I begun to play with ideas and settled on using a Raspberry Pi with a touchscreen monitor, I wrote a couple of hundred lines of Python to control the user interface, a small camera, a photo printer, and if I connect to a WiFi hot spot, then I can email and blog the photos on the spot. I have a good interface and an idea. Certainly I will need Marie to put the face on it so it looks like something great and I think we will have a winning product.


I am excited about this for a few reasons.
1. It's cool. Everybody loves a photo booth at a party. It's boas and fake mustaches for everybody.
2. We can make photos and videos to include in the wedding packages. We already do beautiful formal photos but now we can include the candid party pictures.
3. It puts branded photos in potential customer's hands.
4. We can built our contact database by having the printed photos with logos, targeted emails, and blog content tied to
5. It is a new revenue stream that customer will pay to use at our events.
6. There is a development opportunity to produce and sell on a large scale.

Can you tell that this is my new favorite part?

As long as we can stay in this magnificent city, then we will continue to grow along our planned path. Not too fast and not too slow.

Saturday, August 6, 2016

Photo Booth Code Base

#!/bin/bash

from tkinter import *
from tkinter import ttk
from tkinter import font
import RPi.GPIO as GPIO
import subprocess, time, os
from picamera import PiCamera
import smtplib
from email.mime.text import MIMEText

GPIO.setmode(GPIO.BCM)

#define GPIO / pins
PUSHBUTTON = 24
PRINT_LED = 22
POSE_LED = 18
READY_LED = 23

#set up pins
GPIO.setup(PUSHBUTTON, GPIO.IN)
GPIO.setup(PRINT_LED, GPIO.OUT)
GPIO.setup(POSE_LED, GPIO.OUT)
GPIO.setup(READY_LED, GPIO.OUT)

GPIO.output(PRINT_LED, True)
GPIO.output(POSE_LED, True)
GPIO.output(READY_LED, True)

#setup the main window as "win"

root = Tk()
root.title("LRP Photo Booth")
root.option_add("tearOff", False)

menubar = Menu(root)
root['menu'] = menubar
menu_file = Menu(menubar)
menu_edit = Menu(menubar)
menubar.add_cascade(menu=menu_file, label='File')
menu_file.add_command(label="Exit", command=root.quit)
menubar.add_cascade(menu=menu_edit, label='Edit')
#add options here to open text editors for the email file and such

ttk.Style().configure("TButton", padding=10, font='helvetica 34')
ttk.Style().configure("TEntry", padding=10, font='helvetica 34')

g_name = "Tell us your  name"
g_email = "youraddress@mail.com"
myFont = font.Font(family = "Helvetica", size = 34, weight = "bold")

mainframe=ttk.Frame(root, padding="12 12 12 12")
mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
mainframe.columnconfigure(0, weight=2)
mainframe.rowconfigure(0, weight=2)

ttk.Label(mainframe, text="     Press Here and Get Ready!     ", font = myFont).grid(column=1, row=1, columnspan = 3)

#set up the camera
camera = PiCamera()
camera.resolution = (1275, 767)
camera.hflip = False
camera.vflip = False

#define functions
def TakePicture():
        l_photoName = time.strftime("%Y%m%d_%H%M%S")
        snaponePhoto('TL')
        snaponePhoto('TR')
        snaponePhoto('BL')
        snaponePhoto('BR')
        subprocess.call( ['montage', '-tile', '2x2', '-geometry', '+5+5', '*.jpg', '/home/pi/Pictures/'+l_photoName+'.jpg'] )
        sendorDelete(l_photoName)

def snaponePhoto(photoName):
        camera.start_preview()
        time.sleep(2)
        camera.capture(photoName +".jpg")
        camera.stop_preview()

def send(l_name, l_email, l_photoName):

        #send the photo to email
        subject = 'LiningerRoodPhotography'
        mutt =  "mutt -s "+subject+" "+l_email.get()+" john.r.rood@gmail.com < /home/pi/GUI/body_text -a /home/pi/Pictures/"+l_photoName+".jpg"
        ml = subprocess.Popen([mutt], shell = True)
        ml.communicate()
        mutt =  "mutt -s "+subject+" "+l_email.get()+" john.r.rood.update@blogger.com < /home/pi/GUI/body_text -a /home/pi/Pictures/"+l_photoName+".jpg"
        ml = subprocess.Popen([mutt], shell = True)
        ml.communicate()

        #print the photo to the local printer
        printer = "lpr -d SELPHY /home/pi/Pictures/"+l_photoName+".jpg"
        #subprocess.Popen([printer], shell = True)

def sendorDelete(l_photoName):
        global myFont
        l_name = StringVar()
        l_name.set(g_name)
        l_email = StringVar()
        l_email.set(g_email)
        photoName = l_photoName

        def sendButtonAction():
                send(l_name, l_email, photoName)
                contactBox.destroy()

        contactBox = Toplevel(root)
        contactBox.title("Enter Your Contact Info")

        contactFrame=ttk.Frame(contactBox, padding="3 3 12 12")
        contactFrame.grid(column=0, row=0, sticky=(N, W, E, S))
        nameBox=ttk.Entry(contactFrame, textvariable= l_name, font = 30, width = 40).grid(column=2, row=1, columnspan =2)
        emailBox=ttk.Entry(contactFrame, textvariable= l_email, font = 30, width = 40).grid(column=2, row=2, columnspan =2)
        ttk.Label(contactFrame, text="Your Name:", font=  myFont).grid(column=1, row=1, sticky=S)
        ttk.Label(contactFrame, text="Your e-Mail:", font= myFont).grid(column=1, row=2, sticky=S)

        sendButton = ttk.Button(contactFrame, text = "Send It!", command = sendButtonAction).grid(column=2, row=3)
        deleteButton = ttk.Button(contactFrame, text = "Start Over!", command = contactBox.destroy).grid(column=3, row=3)

        for child in contactFrame.winfo_children():child.grid_configure(padx=5, pady=5)

def exitProgram():
        GPIO.cleanup()
        root.quit()

pictureButton = ttk.Button(mainframe, text = "Touch Here To Start!", command = TakePicture).grid(column=1, row=2, columnspan = 3)
exitButton = ttk.Button(mainframe, text = "Exit", command = exitProgram).grid(column=3, row=3, sticky=E)
for child in mainframe.winfo_children():child.grid_configure(padx=5, pady=5)


mainloop()

Friday, August 5, 2016

LiningerRoodPhotography

The Next LRP Photobooth Photo Bomb Star Is Here!

Thanks for using our photo booth. We hope that you had a great time and enjoy the pictures. It's what we do.

Monday, May 9, 2016

Mocking up the Prototype


That sounds all fancy, but I'm just trying to fit everything into a box.

I got a Selphy CP-1200 for the instant printouts. It was easy enough to install in Rasbain through the installer. I set it as default and it printed correctly the first time. The feed tray is obnoxious and I hate the way it pokes out the front of my box but I'll make it better in the production model. 
The whole design has changed since i started. I have a printer now and I wasn't going to use one at all. You may ask how I can have a photo booth with no printer, and I can certainly understand the question. But photo paper is expensive and it is easy to instantly email the photos to the people taking the photos. 
I was able to make a cable mounted push button out of a switch, iPhone charging cable, an air fitting, and some heat shrink tubing. Again, it wasn't exactly the look I wasted but it's functional. You can also see my 50mm pancake lens that in going to mount as a prop. I had originall intended to use my Nikon D3200 for the camera but it doesn't make sense when I can use a $30 camera to get really good photos and not have the liability of having my backup camera haning out with a bunch of drunks taking selfies. 
So, I'm waiting now. I ordered a few led's and a 7 in' touchscreen display for the front. Once I get that I'll be another $100 bucks in but it'll all be there. A little more coding to work the bugs out and I'll wrap it up.

Sunday, May 1, 2016

LRP Photo Booth featuring GeminiHeart7

The Next LRP Photobooth Photo Bomb Is Here!

This was one of the first automated blogs that I posted with the Raspberry Pi. Since then I've changed the camera, image size, where the logo is, and some of the scripts to make it email the customer instantly. Blogger is pretty good about allowing email updates but I'm looking for a way to share it to Favebook and Twitter, if I can. That's a lot harder because I have to find a way to get the customers email address from them and into the camera.
But the idea is to blog every montage to the LRP Party Page, wherever that is. And email it to the customer. I may be able to post to to FB eventually but I'll have to create a desktop app to look the person up by email and add tag them. That's not easy for a guy like me.

Saturday, April 30, 2016

Automated Blogging from the command line is enabled!

Bam! i took these images with the camera controlled by the Raspberry Pi, and they email straight to the Blog

Thursday, April 28, 2016

15 Minute Friends

I've been doing this Uber thing for a few weeks and it's fascinating. Truly fascination, like sitting in a sports bar by yourself. In a sports bar you can hear people talk about things they think are bad-ass. I just heard this guy tell his friend about AC/DC's lead singer problems and getting tickets to Tesla after 20 years of procrastination. He was deep and passionate about it. This guy truly enjoyed his conversation and I enjoyed not being distracted, which gave me the capacity to eavesdrop appropriately. The two hot chics across the bar from me really enjoyed trying to convince the barkeep that it was happy hour. They enjoyed it even though it was apparent that they ran the same routine for at least the past 30 years. Maybe they were sisters that grew up in the 70's. They were drinking beer straight from the bottle. It was Ultra though. I guess that means they they are down to earth but still have to maintain a figure. Mall walkers. They enjoyed it. This particular sports bar always has a guy in a sports jersey and a guy in a cowboy hat. Always at the bar but never in the same group.
The setting is interesting, but not fascinating. It's loud, commotion everywhere, they're laughing and drinking, and there are no less that 50  people within earshot.
Inside of your car is private. It's secluded and quaint. It's dark and reserved, it's different every time. That's why it is really interesting, intriguing.
When you drive
before midnight
after midnight
after 2

Where you are
the bad part of town
the good part of town
the bar

Way late in the good part of town you can find the walk of shamers. They take Uber now, just so you know. I'm amazed they they actually tell the Uber driver what they're doing. I mean, no one says "I just hooked up with this guy that I met in the bar and we went to his place. It was cool for a while but he didn't want me sleeping there all night". But they are pretty honest.

Friday, April 22, 2016

Photo Booth Day #1

This thing is cool. I got the idea to build a Raspberry Pi based Photo Booth that controls a pro-grade camera and prints the results of a few shots. Turns out that the RPi is a full-on beast and the possibilities are endless.
I'm remoted in to the RPi from my desktop making at all work on day 1.
After looking at this thing it seems that I should be able to post to Blogger, FB , and captures some pretty decent contact list info. 

I'll be ruling social media soon.

Saturday, March 12, 2016

Thinking About Design

I got to thinking about how to improve my book cover and realized that undone know a thing about designing a book cover. The obvious thing to do is to read a blog, right? That's what I thought. I found Humble Nations @ http://humblenations.com/ did a good job of confirming just what I had suspected: I'm clueless about design.
I was hasty publishing. Very hasty because I was up against some deadlines that had nothing to do with this book, or any book. Basically I imposed a deadline on myself for a pretty bad reason. I was excited to get it on the shelf... Now that I have a bunch of extra time I am rethinking some of those decisions.
The book is all about the layman businessman figuring things out that are outside the skill set of the business. That means you are trying to cut your cost by doing everything you can yourself. It save you cash and it is more fulfilling. But you might do it twice, or three times, before you are comfortable with the results. So, here I am with a book on the Internet about marketing your business on the Internet and my cover sucks. See that linkage? I'm not expert at this stuff, but I am learning at every turn and I will be an expert with the help of the tools that are readily available on the Internet.
Internet, Internet, Internet...
That's funny, right? I'm getting an oil change at the dealership. Ms. Marie's Jeep was behind on recalls and services so here I am sitting for two hours. So, I'm filling my idle time thinking about how to get more out of my business. All of my businesses. On the Internet. I'm on the Internet trying to figure out how to better promote my book about promoting your business on the Internet. This Internet thing is big.
Back to the point. I haven't solved anything except for thinking about the irony. The original book cover was made from a word cloud. They are neat to play with so I got caught up in the neatness and some other geeky people though so too. So I took the first half of the book and pasted it into a website to get a picture of the words all jumbled up. It looks neat to me but doesn't do anything but puts some words out there. It wasn't a very smart move and I wish that I hadn't been so hasty. Have you ever said that to yourself? This is my first time, but anyway. All I needed was a cover with a title and my name. That's exciting. I had a cover with my name on it! But it is ugly. It is ugly. No doubting that, but I didn't think it mattered. It matters. I say that a lot in the book.
Now I have to figure this thing out. But i have no idea how to do it. I will. Soon.
But now my oil change is done. 


Monday, March 7, 2016

Labels

I am really put off by labels. They are everywhere and people wear them with such pride. Scroll your timeline and you'll see a few memes letting you know how crazy the poster is. Is it attractive to be crazy? When did it become favorable to be outside the norm? Isn't crazy the same as deranged: not logical? You cannot be a contributing member of society and be crazy. Moreover, you cannot be crazy sometimes. We must refrain from putting ourselves in these groups defined by labels because it is fashionable. There is a social responsibility that we all share and the first thing that we have to do is shed the labels.
Nevertheless, that's just a transitional thought. Look at a few of the big labels: Democrat, Republican, Democratic Socialist, Feminist, LGBT, White, Black, Caucasian, Atheist, Bitch, man, woman. It is hard to believe how much effort people are willing to exert in order to fit squarely into a category and be clearly defined by that label. Have you talked to a Crossfitter lately? If so then, for God's sake, don't tell them that you ran any further than 800 meters this morning.
As a white man, I am in the majority. I always have been. Presumably, I have gotten every loan that I've ever asked for and I didn't even have to pay interest on it. Certainly, I've had every opportunity available to the masses presented on a menu prepared just for me. Therefore, I cannot identify with anyone else other than rich white men. I wear that label. However, I didn't pin it on my shirt. I didn't have to because I was born this way. So, point and laugh. Throw some rocks or something. You can because of my label. Oh, and by the way, if you call me a Caucasian then you are subscribing to a derogatory term given to non-Aryans by a German in the late 1700's. I've never been to the Caucasus region. I don't know anything about it and I don't have any ties to it.
Politics, parenting, or just getting through the day; we are all facing the same struggles. But we can't admit it because we are so divided. It must be my team, my label; you can't understand because you are not like me. You can't feel the pain that I feel because you can't understand me. Empathy is hard to understand but it is really the key to breaking through the labels. It's the closest that we can hope to get to understanding, but it's good enough.
Here's a thought, an actual thought that didn't come from a meme: let go of the label and understand that when you create a team you also create an opponent.
Unless you are a horse, fuck your team.

Thursday, March 3, 2016

First Week Is In The Bag

90 copies sold the first week! I'm so stoked! 
http://www.amazon.com/dp/B01BWDHV5A?ref_=pe_2427780_160035660

Sunday, February 28, 2016

My First Book is on Sale

Because it's not all about the money. That's right, it's not. Some of it, but not all. I'll run a special as often as I can on Amazon. So, right now I have given away 30 copies of Getting Your Name Out There and it's only been one day. I hope that we give a million away, it costs me exactly the same amount.
Please pick one up in the Amazon Kindle Store. If you read it then please leave me a review.

Saturday, February 27, 2016

Gas Engines Are Dead, Long Live Gas Engines

Oh, it runs. exactly like you would think. It starts as soon as you touch the key; a puff of smoke and a cough, but it runs. Flat as ever and I'm sure there's not a bit of compression in the thing. Certainly not a bit of oil pressure. But, if it wants to be a gas car then it's earned the right to be a gas car. I will just have to experiment with big ass electric motors and expensive batteries some other time. 
So, I've got to figure out what I'm dorking around with. Maybe a filter pump from Mexico and a sender. Maybe. Maybe a little Indian Head gasket sealer.

I did figure out that there are some pros and cons to having the Mexican filter pump. Exhaust is a con. Nothing wants to fit in my price range. It's been so long that I don't even remember what the first after market exhaust attempt was. But it was about a hundred bucks and was stupid. I'll bet I'm on number three now. The first two are in Tim's Garage. You might now him, and if so he'll probably give them to you. Because they were both stupid choices and I had to beat them with a hammer to get the Mexican filter pump to work.
It's not so bad. Most everything is there and some of it works.

I'm starting to notice this rust a little bit. The floor pan look a little rough but maybe I can save them. I actually tried to cover the rust with fiberglass. I did cover the rust in fiberglass. But it looked stupid and didn't last more than a week.
Rust encapsulation.

This is not how to do rust encapsulation.





Picked up this Ghia

Look what I drug home. Not recently. As a matter of fact it has been 7 years to date. I found this VW just after moving to Washington state and parked it in the driveway of the house two days before closing on it. It had some problems, but I was just going to use it as a project car. I planned to build an all electric car. In those days there were no Tesla Motors making road cars and I thought it would be great to dump $8,000 in a car that I could drive 45 miles at a time. Only problem is that the damn thing started after I put a battery in it.

She's a little rough. A lot rough but I can work with that. I don't know if it will ever be on the road but I'm going to spend a little garage time massaging the details.

 Some places were a lot rough and I've never done anything this extensive before. It could be a big job, but I've got a big garage.

 


Biography

I am a Project Manager, plain and simple. I balance results with efficiency by mastering inputs and outputs, creating realistic expectations, and optimizing what works. 
Much of my work has been building enterprise systems based on existing programs and departments effort. I am an expert at building relationships that align effort, time, and resources to create new opportunity and success.
My professional goal is to find all the right pieces and put them together in a way that works; regardless of the business, customer, or project.

You will read all of that in my work. More importantly, however, I am a family man. My drive in life comes from two magnificent kids and an wonderful wife. The thread that pulls through all of my work is family. It is the most important thing that I have learned after 25 years of military service. If they are not with you then where you are going is not really that important.Everything that I do now is focused on the family environment. 

I make sure that the back office is as artfully managed as the photography itself. Building the brand of Lininger~Rood Photography is my only focus. While the photos take care of themselves, it is my job to optimize the price, value, and customer service experience. Through advertising campaigns, business strategies, social media presence, progressive web site design, and Search Engine Optimization, I make sure that we deliver the best customer experience available anywhere.
          I am not uniquely qualified to produce expert books on the way the internet works. In fact, I can say with some certainty it is evolving right now and I have no idea how to use the latest and greatest widgets. Nevertheless, I have learned how to take advantage of some of the tools that are available and use them to add value to the business that my wife and I built from scratch. We have grown based on the results and it is my pleasure to share it with you. 

Getting Your Name Out There: Marketing Your Small Business

Getting your name out on the street is hard. It is really hard work. When you are a small business owner with a little skill and a dream, you are going to want to put everything into your craft. Be a craftsman, an artisan, be really good at something that only you can do. However, I will tell you now that it will not be enough. This is not intuitive stuff. I am an intuitive guy and I missed it the first time. So, let us talk about how to get your name out there in a way that works and keeps you getting noticed by customers. This book is all about search engine optimization and using the internet to fuel your business.
It's on Amazon for a really great price, pick up a copy and get started today.