Hi. I’m Steve Deddens; almost everyone refers to me simply as “Deddens.” This page, that I built, serves as a vehicle to introduce myself and allow you to get to know more about me. I have always had a love of aviation from as far back as I can remember. That love gave me my life’s goal. Pursuing that goal was the vehicle that allowed me to achieve things only dreamed of by many. I am a United States Armed Forces veteran. The five years spent as an officer in the United States Air Force taught me: Professionalism, Work Ethic, Teamwork, Collaboration, Critical Thinking, and Social Responsibility; attributes that, once learned, are never lost. Thirty-two years working as an airline pilot and training instructor allowed me to work with some of the finest individuals in the aviation industry. It required excellent interpersonal, organizational, and communication skills; and it required sound judgment and perpetual vigilance. My experience as an entrepreneur, building and running a computer application (PowerBids) allowed me to exploit my creative talent. PowerBids touched and enriched the lives of many people. I’m proud of what I was able to give them.
The following “Vignettes” section provides a collection of short, essays that expand on these themes.
Having said all of that; I've had enough of retirement. It is not for me. I've made up my mind to reenter the work force and, once again, make a difference. With that goal in mind, I enrolled in an exhaustive twelve week web development immersion class. The class reinforced and updated my programming skills. I found it a great challenge. Also, it was fun to work with a young generation of new professionals. The “My Projects” section below contains a portfolio of the projects completed during the class. See my LinkedIn page and my resume for formal summaries of my professional career.
This section contains a series of short essays that are written by me. They are derived from my various life experiences. This is my opportunity to give you, the reader, a view into my persona. The central themes are: working with people, problem solving, and hard work.
My favorite is “My Vision: PowerBids.” It may be TLDR, but the testimonials alone, at the end, make it well worth the read. I am proud to share these vignettes with you. Some are rather humorous! Please explore all of them!
Deddens
I have always been fascinated with the way things work. If I weren’t building something, then I was taking something apart just to see how it was made. From automobile transmissions to microprocessors, I simply had to know how they functioned.
Seems to me most people learn inductively. Not me. No, I have to learn the hard way. I have to “take it apart”, see inside. I learn deductively. As it turns out, it pays dividends to learn that way. As they say, a picture is worth a thousand words. Once one “sees inside” a thing, it is easy to comprehend and remember the total scope of a thing’s functionality. Through deduction, the permutations become obvious. At that point, an instructor simply provides guidance.
A close friend of mine once gave me a huge compliment that went something like this: “We’re hungry, get out the battering ram, and knock the front door down only to find you inside at the dinner table half done with supper.” Understanding how and why things work is my strength. It’s my key to the back door.
Here... This link sums it up nicely: Is It More Important To Know How Or To Know Why?
Synopsis
This document serves to explain what PowerBids was, how it came into existence, and to give insight into its design and structure. -- Written by Steve Deddens, December 2015
Narrative – How a vision became reality.
Each and every month, as a pilot for Continental Airlines, I would face the complicated and time consuming task of bidding for my next month’s flying schedule. Before I built PowerBids, I did this by hand using the company supplied bid package. (a pool of available schedules published monthly for bid)
The flying schedules in a bid package are commonly referred to as “lines of time.” The lines are formatted horizontally as thirty-one day calendars across the page with twelve schedules/lines printed per page; each line has a unique numeric reference and the body of each line contains alphanumeric references to “pairings”, printed elsewhere. The pairings contain the detailed specifics of each day’s flying.
The bidding process involves analyzing and sorting the lines into a list ordered according to one’s preferences; then, typing the list into a computer terminal. After the bid closes, the schedules are awarded in seniority order. The most senior person bidding need only bid one line. The most junior person bidding will get the last line remaining. The bid packages are printed front and back using a monospaced font, can easily exceed 400 lines, and can be over a half inch thick. Deciding which lines to bid, and in what order, quickly becomes a monumental task.
Faced with this difficult and repetitive task, I had devised a manual process to help me bid. First, I used a simple algorithm to calculate a line’s productivity (paid time relative to unpaid time spent away from home). Then, I would literally cut out the printed lines and rearrange them in productivity order. In essence, I was reformatting the bid package according to my requirements.
A vision haunted me for years as I toiled away at this process. I imagined building a computer program that would automate what I was doing manually, then submit the bid to the company’s mainframe computer. I also imagined enhancing the alphanumeric pairing references on the lines with much more intuitive and informative Gantt diagrams. Problem was, my vision required: a personal computer, programming software, being able to access the company's files containing the bid package data, and a network connection to the airline’s computers. All of which, in the 1970’s, and most of the 1980’s, did not exist. In addition, I would need to learn computer programming.
However, things started to change and in 1987, the airline started posting the files I needed on CompuServe’s new dial-up network. Suddenly, my vision was within reach. I purchased an Amiga computer, a text editor, and a Modula-2 compiler (programming software). Then, I rolled up my sleeves, taught myself the Modula-2 programming language, and went to work writing a parser to use on the newly available files.
Surprisingly, it took me only a couple of days to write a program that would read the files, calculate all the lines’ productivity values, and print the bid package in productivity order. Wow! Just like that, I had a valuable tool that automated the sorting I was doing by hand.. I didn’t stop there. All the pieces were in place to realize a second part of my vision. In a couple of days of programming I was printing the lines using Gantt diagrams to graphically illustrate the pairings. Except for automatically submitting the bid, my vision was realized. Also, It should be noted that I leaned on Steve Endicott (Endi), one of my college roommates and an accomplished computer programmer, for tutoring and advice. He was the go-to resource whenever I hit the wall trying to solve a problem.
I showed a printout of my work to a copilot. He immediately pulled a hundred dollar bill from his wallet and proclaimed that he was my first client. Client? Up until that moment there was never any thought of marketing my work. Within a few months I had over a hundred new clients handing me entry forms containing their specific bidding parameters, and paying me for a printout. I bought a small database program for the Amiga. Each month I manually transcribed the data from the forms into the database. Then, using my software and the Gantt diagrams, I would print and mail a custom bid package to each client. Consider this as a stepping stone in a long journey as the monetary return was never really enough to justify the labor involved. My bidding problem was solved and I was also able to help my peers.
By 1994 the personal computer was becoming ubiquitous; presenting yet another opportunity. Endi thought that the program could be ported to the PC and distributed to the clients. This would eliminate both my manual entry headaches and the mailing time lag and, it would give the clients the ability run multiple alternate sorts. In addition, it would make possible the remaining part of my vision: automated bid submit. Endi and I joined forces officially forming PowerBids. Things moved fast. Endi ported the Amiga code to DOS. I wrote the automated bid submit interface to the Continental mainframe using an API supplied by CompuServe. It worked! Then came the Internet.
Technology was a moving target. Continental Airlines developed their Web based crewmember support in 1997. The CompuServe interface days were numbered. It was obvious that a Windows version of PowerBids would have to be written. The first Windows version was posted for download in December of 1997. The third and final phase of the PowerBids saga had begun.
Windows gave us the resources to make PowerBids really shine. Printing the bid package to see the Gantt diagrams was no longer necessary. They were rendered, on screen, bigger than life. The lines became tiles that could be easily moved in the list using either the keyboard or the mouse. My early 1980’s vision had truly become reality.
Typical PowerBids display
(with pairing detail popup shown)
[Select for Larger Image]
[Right-click and Select “Open image in new tab/View image” for even Larger Image]
Then, in 2006, Continental Airlines changed the process of assigning flights to pilots. The pilots no longer bid from a published bid packet. With that, PowerBids became a tool they no longer needed. However, PowerBids continued to service the flight attendant community. Finally, after over twenty-seven years of service, PowerBids Partners announced that the program would be retired after the 2015 December bid cycle.
Several factors contributed to this decision. The world moved forward and the era of the “app” had arrived. Porting PowerBids to this new paradigm would take considerable time and effort. Also, nine years after a merger between Continental Airlines and United Airlines, the scheduling processes for the two flight attendant groups were not yet consolidated. Not knowing which process to focus on, and the very real possibility of the airline’s changing the bidding method for the flight attendants, as they had done with the pilots, weighed heavily in the decision.
Business Model
First of all; to be clear: The program was developed as a tool rather than as a business. The scope of the client base was, from the beginning, too small to warrant any large capital expenditure on the project The pace of development mirrored the pace of computer technology that was rapidly becoming available to the consumer. That said, the business model was simple: Give the clients the vehicle (program) and charge them a monthly fee for the fuel (compiled data). PowerBids provided tremendous value. At its peak, and without any marketing, PowerBids grew to over a thousand active clients.
Noteworthy… Synergy between PowerBids and Continental Airlines Crew Planning
PowerBids from the very beginning maintained a close working relationship with Crew Planning. It was a natural match. Crew Planning generated the base data and PowerBids provided the program. There was one interesting twist. PowerBids recognized from the start that giving the client bad data had the potential to cause a lot of problems. Because of that, PowerBids took measures to verify the integrity of each bid package downloaded from Crew Planning. And, from the start, errors were found. The pairing generating software used by the airline was far from perfect, necessitating manual changes every month. This inevitably introduced errors; pairings being duplicated on two or more lines, pairings missing, duplicated pairing i.d.’s, and duplicate line i.d’s. just to mention a few. PowerBids caught them all, and caught them early. Each month crew planning would correct the errors we reported to them thus eliminating any chance of the errors becoming operational problems for the airline or for PowerBids. Crew Planning was happy and the PowerBids program never crashed.
Noteworthy… The DLL Solution
With the rollout of the Windows version of PowerBids a recurring problem soon arose. The tech guys at the airline were busy refining their newly developed web interface. Because of this, the logon sequence and navigation to the bidding forms was constantly changing. Each change would cause the PowerBids program to return a bid submit navigation error. Fixing the error required writing and distributing a new version of the program. The clients did not like updating! They just wanted the program to work. The solution was easy. We moved all the navigation code into a Dynamically Linked Library (DLL). Then, we set up the program to check for, and automatically download, any update to the DLL before attempting to connect to the airline’s server. Whenever a client would call us with a newly discovered navigation error, we would jump in, write, and upload a revised DLL. Most of the time we were able to do this within a couple of hours of the call. The majority of clients never knew that there had been a problem.
Behind the scenes...
It should be noted that PowerBids had a lot of moving parts; many of which were not overtly apparent. The payment interface through PayPal was one. Others were: maintaining a web site including CGI integration programs, program documentation, source file synchronization, etc... The list goes on and on.
Reminiscing on Customer Support
At first, we would mail a floppy disk to our clients. Remember, there was no internet! Then, with the web, we posted the program for client download. At that time none of our clients understood the concept of installing a computer program from a download. Thus, we spent a lot of time doing product support. It was challenging yet rewarding as we watched our clients’ technical abilities improve.
Testimonials: Snippets from our dedicated clients…
email Oct 2015: -- YOU ARE BREAKING MY HEART!!!
Yes, I understand that you want shut Powerbids down. I get that you want to walk away from it. But do you realize how much "we" the Powerbids groupies really, really need this program?
I have tried the old fashioned way of bidding and I don't like it one bit!
I suppose you will not reconsider. Or at least sell it to somebody (not me).
One month left, right? Hyperventilating....
Any suggestions?
I'm going to miss you. :(
Sandra…
email Aug 2015: -- Keep Power bids
Hi,
I would like to ask you to please continue the power bids software if at all possible. I am not sure how (I’ll) manage to bid well after December...
Best regards,
Josie…
email Aug 2015 -- Powerbids alternative
Hey!
I'm really sorry to hear you're retiring, but I do understand and wish you guys the best. I was wondering if you happen to know of an alternative to your program that out there?
Btw...I don't know what I'm going to do without you😥
Benita…
email Jul 2015 -- powerbids closing
I understand, but I'm still bummed. Do you know of any other bid programs out there that are available? I'll use you guys until it dies, but I still dread doing things the old way-- it's been way too long.
Patrick…
email Jun 2015 -- the end
omg! I'm so bummed you're ending powerbids! I've been using you so long I don't know how to even look at a bid packet. you've saved me sooo many times. I will sorely miss you :'(
good luck in your next adventure...
Idarae…
PowerBids Help Link -- Dec 2015
Used... for the month of Jan 2016. Going from power bids to that was like going from a Maserati to a Yugo. Please find someone else to pick up where y’all left off.
Dean...
PowerBids Help Link -- Nov 2015
Hi steve, this is Kimberly... Flight attendant, I have been with Continental/ now United for 18 years. My company doesn't teach you how to bid. That's when I called you. You are the most patient, cheerful person I know. You always took a call
from me no matter the time of day. I am forever grateful to you. I'm still using Power Bids now, I have read a few months ago that Power Bids is going out of business. I have been very upset over this. do you have any suggestions for me for bidding assistance? Power Bids is all I know! don't laugh, but I can't even read a bid packet. Thank you steve.
Kimberly...
PowerBids Help Link -- Aug 2015
Thank you for all the wonderful years of Power Bids!!!
I know nothing about computers so I am not sure how much work goes into offering the bid packet... for the search ability however I know that I would be willing to keep paying for just the bid packet if you offered it. I would also be willing to pay a little more if that is what you needed to keep offering just the bid packet. I completely understand if that is not an option. Thank you again for all the wonderful years of Power Bids and for giving us until the end of the year...
Good Luck to all of you in the future!!!
Traci…
PowerBids Help Link -- Jul 2015
Hi Steve,
Boy am I sorry to hear that you guys are shutting down Powerbids. I have tested out [...] the last few months, and although it has some nice features, it just doesn't match up. Is there any chance that someone may be able to further develop Powerbids... I'd be willing to put some time and money into it, if that makes any difference. If further development of Powerbids is simply not an option, I guess my next question would be whether you guys know of any other options, (other than [...]), or - bigger question, if you could tell me how I could start the process of developing something new . . . . who exactly within the company supplies the access and requirements for accessing the CCS server?
Thanks for the many years of simplifying the bid process for so many of us, and thanks for any advice you can give going forward!
Miles…
PowerBids Help Link -- Jul 2015
Darn it that's too bad. I'm trying to learn this new program called [...] but idk if I can learn it by this month's bids. If necessary am I still able to download the bid pack from you? What would be the cost? I also want to thank you for all your past help Steve. You've been great & sure will miss you and PowerBids.
Marisol…
PowerBids Help Link -- Jul 2015
Dear Steves,
I got my early out retirement date of August 30. So I won't be using Powerbids anymore.
But I wanted to thank you for providing me such great service over these many years and being so helpful and patient with my
questions.
Best of wishes on your retirement years.
Now it's time for us to all have fun as we transition to being old and distinguished (we hope!)
Hugs,
Cheryl...
It was a great ride! I’ll miss it.
Sincerely, Steve Deddens
In early 1988, flying as an MD-80 captain for Continental Airlines, I became involved in the monthly process of compiling the planning documents from which the pilots would bid for their monthly flying schedules.
Immediately I spotted an error in the staffing formula that had the potential to become a big problem.
The company was underestimating the number of pilots required to properly staff the scheduled monthly flying. I tried to explain the problem to the Vice President of Flight Operations. For some reason he simply did not grasp it. Finally, in exasperation, I stated that the problem was going to come into extreme focus on Easter Sunday. I predicted that operations would melt down with chaos to follow. He politely dismissed me from his office and I went back to work.
Sure enough… Easter came and unfortunately, the airline’s operations melted down just as I had predicted. The cost went way beyond dollars and cents. The disruption in passenger travel plans and the loss of goodwill was incalculable, not to mention the ensuing investigation by Congress.
A week later, and much to the V.P.’s credit, I received a call from him asking if he could come and meet me to discuss the melt down. We met and rehashed why I thought the staffing was incorrect. We also discussed what should be done to remedy the situation.
He implemented all of my recommendations. From that time on, flight ops ran a lot smoother. Problem solved.
In early 1972, while a lieutenant in the United States Air Force my “additional duty” as a fighter pilot was to serve as scheduler for the 613th Tactical Fighter Squadron, one of three sister squadrons of the 401st Tactical Fighter Wing, Torrejon Air Base, Madrid, Spain.
There was a festering problem developing that I recognized.
Almost all of the pilots rotating into the wing were coming directly from war time duty in Vietnam. Because of this, they came with an elevated amount of accumulated military leave. Their leave had to be used before the end of the year, otherwise it would be forfeited. This, in itself, seemed innocuous enough. However, when taken in the context that we had a requirement to have a minimum level of combat ready pilots available at all times, it might present a huge liability because we could only afford to have five pilots unavailable for duty (i.e, on leave or sick) at any time. The obvious question was: Did we have enough time left in the year to burn off the excess leave liability? A quick inventory of accumulated leave and a back of the napkin calculation yielded the answer: The squadron needed to have a minimum of three pilots on leave at all times for the rest of the year. Otherwise, some pilots would be forced to forfeit some of their earned leave.
I presented the problem to my boss, the operations officer. He immediately grasped the problem, called in the four most junior pilots, and sent them packing for two weeks. Good move! Then, I built a simple grease pencil board on which we could draw a Gantt chart representing the total leave liability for the remainder of the year. In rank order, the pilots were given a shot at drawing in two weeks of leave at a time until all the leave liability was plotted. The only restriction was no more than four lines could overlap on any date. Simple.
What is interesting is the “board” became a huge focus of attention, as pilots used it to do two, three, and even four way horse trades among themselves. The solution became self managing. Sweet.
As the scheduler, I attended the daily operations brief with my Squadron Commander. It was at one of those briefings that the Wing Commander was made aware of what was now a full blown manning problem affecting the sister squadrons. When the Wing Commander asked my Squadron Commander if this problem would affect his squadron, he was able to state that it would not, as he had a solution in place. He got promoted.
In 1967, I held the position of President of the Mustang Flying Club. The club was a sanctioned, extracurricular, student organization of California State Polytechnic University. This is where I learned the exponential power of group problem solving. The “Board of Directors”, comprised of the club officials, would meet once a month to manage problems and set policy. My job as president was not to solve problems but rather to moderate the meeting. With that came the power to direct the conversation.
The members were all bright people but we had a couple of, let’s say, unique individuals. Often, when discussing a problem, they would interject ideas that, on the surface, seemed completely off topic and rather ridiculous. Of course this would inevitably elicit ridicule from others.
Somehow, I was successful in keeping the peace. Perhaps because I would make statements suggesting that the “rogue” ideas may somehow have merit; and, surprisingly, more often than not, they did! The dynamic usually played out with someone restating the idea in a slightly modified way. This would lead to more discussion and ultimately a good solution would be found; brainstorming comes to mind. However, the takeaway is this: Good ideas are everywhere but only found if you truly look everywhere for them; and open, unbiased discussion is the best way to do this.
---------------
One problem we encountered and the solution we implemented...
Problem: Cash flow. We had monthly expenses including lease payments on the fleet aircraft, insurance, maintenance, etc. And, we had members that were notoriously late in paying their monthly invoices. This made the treasurer's job a nightmare.
Solution: Stamps. That’s right. When first presented, the idea seemed to have absolutely no merit. However buying stamps meant that the members had to prepay for their flying. Here is what happens when you change the bylaws to require all payments upfront: First, cash flow is reversed. No late payments. Second, revenues increase dramatically because the fleet utilization skyrockets. Why? Because once a person has paid for something fun, they simply can’t wait to use it.
Result: Our fleet doubled, our membership tripled, and our revenue quadrupled. (Also, the treasurer kept his sanity.)
One day, while I was President of the Mustang Flying Club, I received a phone call from an Air Force colonel. He was the base commander of Vandenberg Air Force Base, a large Air Force rocket launch facility. He advised me that earlier that day, one of our club’s aircraft had entered the base’s restricted airspace. Also, the aircraft had used the base’s runway to land and take off several times without clearance. Not good! I advised him that I would track down the pilot of the aircraft and get back to him ASAP.
Turns out the member of the club that was the flying the aircraft was Dr. [...], one of my professors! He was chagrined, to say the least, and advised me that he had mistaken the Air Base for the nearby Santa Maria County airport. He realized his mistake only when an Air Force helicopter flew alongside and flashed a red signal light at him. I immediately thought of a solution to our problem and ran it by him. He liked it; but, I had to sell it to the Colonel.
I called the Colonel and told him who the pilot was. I proceeded to lay out my/our solution. You see, I realized that we all had a problem and that he needed something to take to the General. As luck would have it, the day of the incident was the day of our monthly club meeting. I advised him that the professor had agreed to share the incident and to give a safety lecture at the meeting that night. The subject of the lecture was going to be the proximity of Vandenburg to Santa Maria. The Colonel bought it. The instructor gave his lecture. The incident was forgotten.
Problem solved…
(BTW, I received an “A” in the class.)
Once upon a time... I was riding along in Business First, flying from point A to point B, trying to mind my own business. But, as luck would have it, I got paired with a really obnoxious seat mate. He was not happy and wanted everybody in the cabin to know it and to know why.
The gist of his story was this: He was in the refrigeration business. Equipment his company had installed with a client had failed and needed to be repaired ASAP. Therefore, at the last minute, he had to purchase a ticket to send one of his technicians to McAllen, TX to effect the repairs. His beef was that he had been way overcharged for the ticket. His logic was that others on the same flight paid a tenth of what he had to pay for a ticket. He went on and on, ad nauseum.
Although he never stated who his client was, it wasn’t difficult to deduce. I finally opened my mouth and the conversation went like this:
You’re in the refrigeration business; correct? Answer: Yes. You obviously have a contract with [...] Foods and they have tons of processed poultry that is going to spoil if it is not being refrigerated; correct? Answer: Yes. And, you will be held liable; correct? Answer: Yes. My response: You got a bargain!
Oh boy… He went into orbit. After he settled down, I proceeded to lecture him on the word “perishable.” The fact that the airline held back a small number of seats just to accommodate the likes of him came with the risk of those seats flying empty; i.e., they are a perishable item the same as an unrefrigerated dead chicken. And, if all the seats were marketed at a lower price, they would all be sold out. His only option then would have been to charter a jet at perhaps ten times what he payed for the ticket. Again, I reiterated that he got a bargain.
At that point the gentleman sitting in the seat directly in front of me raised up, turned around and said: “Looks like one of you paid attention in Econ-101, and can think!”
My seatmate shut up recoiling into his seat. I resumed my sudoku.
When you start getting out of shape faster than you can get into shape; you're dead.
(Henry Obenchain, Director of flight safety, Lockheed Aircraft.)
Since 80% of all airline hull losses are directly attributable pilot error; the best way to improve airline safety is to remove the pilot from the aircraft. (Ouch!)
(Henry Obenchain, Director of flight safety, Lockheed Aircraft.)
The first step of solving a problem should be to ask “who’s problem is it”? If it is not your problem then the problem is solved!
(Gordon Bethune, CEO Continental Airlines)
The secret to doing anything in life: Maintaining control. Anticipation of losing control: Fear. Loss of control: Terror
(Passing conversation with anonymous CEO in business first)
Rationalization: Using faulty reasoning to get the answer you want.
(Steve Deddens)
There’s a very good reason compensation is proportional to responsibility. When you hear the word responsibility... think liability.
(Steve Deddens)
The business model for most Fixed Base Operators (FBO’s) at small airports across the country is relatively simple: Make money by selling aviation fuel, supplying maintenance, and renting aircraft to pilots. Almost all of them use a pricing model for renting aircraft that has always astounded me. They charge the same hourly rate whether or not the aircraft is flown on a short local flight (three hours or less) or on an extended flight. They also charge a minimum fee of three flying hours for each day the aircraft is rented.
Example 1: If a pilot rents an aircraft for an extended period of seven days, but only flies the aircraft for eight hours, he will be charged the hourly rate for twenty-one hours. The cost becomes prohibitive and he drives instead.
Example 2: If a pilot wants to fly to a destination that is ten hours away and then wants to return on the third day, he will be charged at the full hourly rate for flying twenty hours. Again, the cost is prohibitive and he takes a commercial flight instead.
The pilots, in these cases, want to rent the aircraft but don’t and the FBO wants to rent them the aircraft but doesn’t.
What is wrong with this picture? The pricing model is wrong. The FBO is charging too much for an extended rental, whether it is for hours flown or for days rented. Breaking out the operational costs of rental aircraft makes it easier to see why. There are costs that are directly proportional to each hour of flight (variable costs). These are basically fuel and maintenance. The more the aircraft is flown, the more the cost. Then there are the costs that are only a function of monthly billing. These are mostly payments to a bank and an insurance company. No matter how much an aircraft flies, these costs are the same. Call this overhead. Obviously the price of rental has to be set higher than the variable cost, otherwise the FBO will have to spend more than he takes in with losses directly proportional to hours flown. The amount (margin) that the rental price is set above the variable costs directly contributes to paying off the overhead. If the aircraft flies enough hours in a month, then the bank and insurance company will get their check. If it flies more than enough then the FBO will make a profit.
This takes us back to the big picture. What should the pricing model be for extended rentals? First, charge incrementally for the variable costs. The more hours flown, the more the charge. This protects the FBO from losses. Second, charge a margin rate per day for extended rentals. If the average utilization rate on the aircraft is three hours a day and the margin is $50 per hour then the charge would be $150 per day. No matter how long the client is gone with the aircraft and no matter how many hours client flies the aircraft, the FBO is protected. He nets the same margin whether or not the aircraft is on an extended rental. Actually, his business should improve because extended rentals are now affordable.
Everybody wins!
Of course I have an opinion. There is the age old saw… everybody has an opinion; same as everybody has a mouth. Unless, of course, you are Harlan Ellison's Ted (I Have No Mouth, and I Must Scream.)
There was a huge event that occurred last December.2015 An event that went unnoticed by most. Did you notice? Did it get your attention? If it didn’t, it should have! In my humble opinion, we witnessed the singularity of space travel. Elon Musk and the gang at SpaceX did something truly remarkable. They recovered a rocket booster after it was shot into space. Big deal… right? Right! They didn’t just fish it out of the ocean. Nooooo, they flew it back to Cape Canaveral and landed it vertically, on a pad, dead center. That is to say, they stuck the landing. Here’s a youTube link to the event. These guys are on fire! (No pun intended.)
By the way, when I say fly, I mean fly. The booster, lets call it the vehicle, is equipped with an arrangement of grid fins that literally steer it while it is plummeting back to earth. It has landing gear that is extended a few seconds before touchdown. And, it executes a zero-zero landing.
What do I mean zero-zero landing? You see, the minimum thrust generated by the vehicle, the thrust used to stop its descent when it reaches the landing pad, is far in excess of the weight of the vehicle; i.e., the vehicle can’t hover! During the last ten seconds, or so, of flight the vehicle slows from over 200 knots to zero knots timing it so that zero velocity is reached right at zero altitude. Then, the rocket motor is cut off. By the way, the timing is critical. Cut it off too late and the vehicle will have started to takeoff again resulting in a catastrophic fall back to earth. Musk, with a great sense of humor, calls this maneuver a hover slam. Truly remarkable.
All of this begs the question: why the singularity? Simple, the cost of space travel suddenly got affordable. Poke around. You will find excitement everywhere. There are even plans to mine asteroids. There's big money in mining asteroids. My guess? It’s bigger than Big Oil! If that doesn’t get your attention, it should. Is there an echo in here? The race is on, and I love races. Count me in... Deddens
This section contains summaries of several of my projects from
General Assembly's Web Development Immersive
course that I just finished. Except for Building This Site, they are arranged in the order they were created starting with a simple tic-tac-toe game then progressing on to fully functioning Ruby and NodeJS web applications. The projects were typically week long group efforts. Each summary describes the project’s objective, implementation dialog, a link to the final result, and a link to the the source code published on my GitHub page.
For now this is just filler text. The real text is being developed using Google Docs (Docs). Once the document is completed, I will use the Docs “Download As” feature to generate the html. From there it is a simple task to extract the <body> section and drop it in here. The only caveat is the styling. Inserting more than one Google document creates class selector naming conflicts. The <style> is extracted from the <head> section and placed into this page's style sheet. Docs likes to use c1, c2, etc as class selector names. The problem is each one is unique to the current document. The workaround is to encapsulate the html in a new class or id selector then convert, for example, the c1 reference in the style sheet to a decedent selector of the new selector, e.g. “#new c1”. This is how I generated html the content for the vignettes and how I handled the styling.
This was the first project the students tackled. It was a solo endeavor. The object was to use the HTML, the CSS, and the JavaScript skills learned during the early weeks of class to develop a simple game application. The README markdown file on GitHub covers the goals, technologies used, and the approach taken to achieve those goals. The list of technologies used is rather amazing. They formed the foundation for every project that followed. The source code for this project is also available on
.
I want to emphasize that there were two key processes that were performed before any coding was attempted. The first was wireframing the layout; i.e., deciding what the display should look like. The second was figuring out the game logic and then pseudocoding the javaScrpt. Once those processes were accomplished, coding the html, CSS, and javaScript became an easy task.
Pure vanilla: There is no use of any type of HTML framework. The only complexity is the external references to the javaScript and CSS files.
Not much here either: Just some simple button sizing and styling.
First; I'll start by stating the obvious: The programing language used to coordinate the animations and game logic is javaScript. Why, because javaScript is native to all browsers. Second; I leveraged the jQuery javaScript library. Did I need to use it? No. But, it is powerful and ubiquitous. And, I wanted to start getting experience using it.
Implementing the game logic was not difficult. The Logic: A status object is defined that has nine key-value pairs; each representing a square on the tic-tac-toe board. Each key has one of three values: unplayed, played by player “x”, or played by player “y”. On start, or reset, all the values are set to unplayed. Each time a square is clicked on, the square's status is checked to see if it has been played. If it hasn't been played, then it's status is changed to played by the current player, the color is changed to the player's color, and the “whoosh” sound effect is initiated. After a square is played, a cat-counter is incremented, and a check for a winner is performed by scanning the status object for a winning row, column, or diagonal. If we have a winner, then a function is called that starts the winning squares flashing and sets off the applause. If there is not a winner, then the cat-counter is checked to see if nine squares have been played indicating that the cat won. If the cat won, a function is called that starts all the squares flashing and sets off the meow. After any win, the board is locked until the reset button is selected. — Had enough of the pin-ball instructions? I get the point. I'll rewrite them… someday.
Not easy! Reference my “Confessions of a coder” [not yet written] in Building This Website. I could see the page in my mind but, putting that vision into code turned out to be a challenge.
The first challenge was just getting an image of the game. Screenshots are easy enough, but cropping and sizing is another issue; especially when one has no experience using the Gimp editor. Gimp is not hard. But, there is a learning curve.
The second challenge was positioning the “Play the game!” link over the image. I quickly became painfully aware of the fact that I didn't fully understand how elements are positioned on a page. I figured it out. It's really easy once one cracks the code. (pun intended) This panel's source code, if you are interested, is available on
. (Search for “id="tictactoe"” in the HTML.)
The third challenge was figuring out how to make the text to the right of the game image responsive. That is to say, move all the text to below the image when the screen is sized too narrow. What I wanted to do was avoid narrow, single word, hard to read, text alongside the image. I found a really elegant solution on the web. Again, it is in the code.
The fourth challenge is still to be solved: I want to make the image into a playable iframe. When I do, I will post a code snippet so that others can embed the game into their sites.
Really! As you read I am actively coding the markup to present my projects. As I finish each one, I will push up the code. Thanks for your patience.