All posts by cs

episode with git

A key piece to web developer modernization is a scheme called GIT which allows synchronization of files and versioning control. Further, one can easily invite collaborators to join in on a project or fork to their own. FTP gone social.

There is a learning curve. There isn’t a user friendly face on GIT. All interaction is via the command line. A new language with artful terms such as Branch, Merge, Add, Commit, Push, and Pull to understand along with esoteric switch options: e.g. -a -u -m

It can be simple or complex. Unfortunately I blundered into the latter by creating several local repositories. One of which was innocently placed downstream of a root repository thereby creating a submodule. I had no idea what I had done apart from the realization that I was no longer able to modify the contents of this submodule from within the main project. In laymans terms; it was screwed up. Simple to implement but so difficult to undo.

A search result offered instructions to eliminate a submodule reference with all sorts of caveats and cautions.

I eventually made a draconian choice and abandoned my local directory tree structure by emptying the files. The submodule became its own repository after I split it off from the root but kept the original files. Its git tracking was undisturbed. In the root repository it was hoped that a simple Clone from the remote would restore all but this didn’t pan out. The remote was linked to deleted files in the old structure and *new* copied files refused to be tracked. A fresh local directory with a new name was established in order to begin again.

While learning the complexities (the hard way), I plan to “keep it simple” going forward.

Heroku and mysqli

Giving Heroku another try, it was straight forward to deploy a php app / mysql database. The routine is similar to the OpenShift PaaS and Heroku is not much different using the CLI as well. Console functionality is barebones.

My test app bombed during its maiden run however with a fatal error: Class ‘mysqli’ not found in /app/www/db.php on line 5. I learn that the mysql_connect() syntax in php is old hat and myslqi is to be encouraged instead. The old way works fine on Heroku but for some reason mysqli syntax has not been configured — and my app is peppered with mysqli.

Thanks to this search result, what one does  is to configure Heroku to use a custom buildpack (see below).

1
heroku config:set BUILDPACK_URL=https://github.com/travstoll/heroku-buildpack-php

Then create an empty commit and push the app again to force heroku to recompile the runtime:

1
2
3
git commit --allow-empty -m "empty commit"
git push heroku master

That worked and my app is restored without recoding.

Modernization

S’man advises that using a traditional hosting service to render web pages is passe. Not wanting to be eclipsed by new technology I followed his encouraging to advance. Aided by online postings, hints, and narratives one can learn the new jargon and implement the latest in cloud computing methods.

OUT

IN

There are many solutions offerings. I discounted Google App Engine off the bat because their implementation is a bit arcane. Ditto the Amazon Elastic Compute Cloud. Heroku was limited in their programing language offerings. AppFog looked promising with a generous CPU allotment but their console system behavior was discouraging. OpenShift by Red Hat however, seems like a winner with excellent documentation and performance. Beware: Most PaaS(s) rely on the Command Line Interface but as the concept matures; user friendly interfaces will develop.  App templates are currently provided for common setups but fine tuning requires knowledge of the command line.

A domain name is furnished with each app that you build on OpenShift. The domain that you are viewing currently is actually: wordpress-strombotne.rhcloud.com/ It is possible to use a CNAME record to point to that URL with one more personalized i.e. the sub-domain  blog.strombotne.com One uses their domain name registrar for this purpose and this is fine. However, a weakness that I’ve discovered is in using a naked domain, e.g. strombotne.com for an OpenShift app. Here’s where it becomes a bit wonky.  You can’t use CNAME with a domain name but typically use an A record resource with an IP number. The OpenShift DNS is limited as one isn’t provided. The fix is to try Domain Forwarding and Masking — a band-aid.

 

 

… and after

1-IMG_6165The fuel sending unit cleaned up nicely. An overnight solvent bath dissolved away the crud and freed the shaft. Unfortunately, the acetone melted the insulator spacers on the terminal posts. I sourced substitutes made of nylon to replace them.

A partial disassembly revealed  the innards and some fine wire too delicate to probe further. But it is interesting to see how it operates. I borrowed a multi-meter for an operational check and it appears serviceable.  The cork gasket which seals the underside of the sending unit attachment flange to the tank is too far gone to serve as a template so I will trace a pattern on paper. Hopefully all of this will seal properly without seepage or weepage when installed.

Fuel Sending Unit

1-IMG_6157Unearthed from the fuel tank, this piece looks like it has been salvaged from the sea floor. It is (or was) the business end of the fuel sending unit. The metal rod, partially in view, is connected to a plastic float at the extreme end. This float will bob up or down and mechanically position the arm as the fuel level changes. That pivot point, behind the gruesome mess, is locked up solid. I will attempt to chip away the corrosion and free the shaft.  Peering into the tank itself revealed no similar horrors.  Plenty of debris and rust but no stalactites or stalagmites artefacts.  It will need to be boiled out.

Value Added

20130921-141315.jpg A professional restorer would be delighted to find these markings. Scribbled  50 years ago by a factory worker; they served as a production note during assembly. The markings have been accidentally preserved by a patina of dirt and petroleum grime. Best I can tell the red painted notation was applied when the tank was stockpiled as it displays upside down as installed. There are other remnant yellow dabs of paint here or there.  A simple brush stroke that indicates that a fitting was checked for tightness or inspected in some way. These original markings will be lost when the tank is rejuvenated with a fresh black protective coat and that is one of the issues with restoration: originality is lost.  It sounds anal, but a dedicated restorer would document these glyphics* and, following the refurbish ,  take steps to re-create them just as they were, thus preserving authenticity.

* guess translation is that ” 128 CA” meant that this fuel tank was intended for a particular application and is shorthand for W128 an internal factory designator for this production series. I can speculate that “CA” is short for Cabriolet.

Progress means stamped numbers and barcodes are applied which can be  scanned and tracked like a parcel  or airline luggage. Just as well — in case we can’t read his writing.

A Smoking Gun

20130920-154745.jpgTank Drain Plug: fuel screen clogged with varnish

20130920-154759.jpgTank Drain Plug: fuel screen cleaned and restored

This is a pre-filter. It is intended to protect the fuel pump and fuel lines from large debris — trash that might have fallen into the tank during refueling. There is a baffle in the lower part of the tank, a false floor, creating a collector. The plug has dual threads. The top set of threads seals against the bottom of the main container. Fuel enters the screen and exits an orifice (below the top set of threads) and into the collector area. Fuel is drawn from the collector by pump.

Ageing gasoline eventually  blocked this screen effectively choking any and all fuel flow. And, this is the reason why the engine ceased running. Its discovery was an ah hah moment.

Long Term Effects

The contents were fresh 15 years ago and by today’s date, way past expiration. Old gas, while still flammable, will no longer combust reliably in an engine and will coat fuel systems with residue and varnish; in other words — gum up the works.

underside

A 22mm Hex Key socket inserted bottom of tank to unscrew drain plug. It was a nice thought that the engineers included one. Bean counters found out and you never see this feature anymore as you can imagine it is one that is seldom called for. I was concerned I would not be able to loosen it as threaded fittings have a tendency to seize. If the original was over torqued or there is rust corrosion then it might be impossible to remove. Steel tank but the plug is brass with an aluminum washer so no rust but dissimilar metals can still create problems. An extension arm (cheater bar) on this tool provided sufficient leverage to break it loose.

The discolored, stale, stinky gas and can be properly disposed of…

Draining the tank

The San Juans

Wikipedia historic primer here — now it is our turn. Last year it was the British Virgin Islands in tropical water and sultry wet. I felt time for something polar opposite. The Pacific NW is a shift from that. July August is prime time because the weather is so predictable. The marine forecasters CYA with predictions of winds 10 to 15 knots becoming 10 to 20 in the afternoon. But, the most we saw was 10 knots usually averaging 5-6.

Wind waves in the straight on the return and most noticible because we were running downwind so the boat is bit rolly pollie. Relative felt about 3 knots. In fact the boat was only making 3.5 knots at best due to the light air. When the boat speed fell below that my crew felt like we were making little progress. However with help from 1 1/2 to 2 knots do tidal current we were actually making 4.4 – 5 knots across the ground. Aviators call this tailwind. There must be a similar seafarers term for favorable going with the flow.

Fishing is a challenge not the mechanics but the hostile obstacles the regulators place hoops to dis suede. Licenses are fish breed specific, time of year, specific days, season. To add insult to injury Spencer’s crab ring disappeared. Scoundrel or currents?

New Bling

The Parts Advisor at the Classic Center informs by email that the desired replacement Trunk Emblem estimate is $$$ (wow) and confides that upon clicking — send that he “turned to his co-worker and quipped; we’ll never hear from THAT guy again…”

I can confirm that automobile restoration is a rich man’s hobby, but this old car is incomplete without this star piece (eclipsed only by the hood ornament).

Not convinced that my queried trim item is NOS or a reproduction. Short of melting metal and casting myself, the alternative would be to locate a donor car in a salvage yard that has not already given up its shiny bits. Not likely as 20 – 30 years will have elapsed.

When they FedEx, I trust that they will insure with care.