Job History: Information Technology Developer

I would like to begin by describing how I worked my way up to my current position of I.T. Developer at Skagit Valley College. I started working at the help desk assisting students with log-ins and computer issues. During some downtime my supervisor, Benjy, decided to test out my Web Assistant skills. I seemed to have a natural talent for editing the web pages and Benjy saw my potential, so he put me to work doing Web Assistant tasks. I began to develop what Dr. Coorough, the MIT department chair, has said are rare talents: the ability to learn HTML, CSS, Javascript, and pretty much any other programming language. I can also do most everything multimedia related such as graphics, video production, printing, and Flash. As a technician, I can solve technical support issues, hardware upgrades and application installation. I was doing such a good job that I was asked to be hired on part time as an IT developer. Benjy moved me from the help desk down the hall into an office with him, and we set to work designing the first Paperless Progress Reporting System for the college. I began by creating the Information Architect Documents. After thorough documentation and planning I began to implement my designs by hand coding using a relatively new technique called Model View Controller. This is very different than a standard webpage, and even a normal web application is not the same as an MVC web application. The MVC technique of coding is very powerful and allows me to perform complex operations from a web page interface. Benjy and I put that power to use in the form of converting an age old paper progress reports system into a paperless progress reporting system.

Job History: Property Management

Successfully managed 68 unit apartment complex. Responsible for advertising and renting empty units, collection and recording of rent, coordinating move-outs and move-ins, customer service and tenant relations. Responsible for rapid turnover of move outs including cleaning, painting, maintenance, repair and  remodeling of units. Routinely perform grounds keeping, landscaping, building upkeep, and preventative maintenance of entire premises including outdoor lighting, automated sprinkler system, security entrances, elevator. Conducted weekly inventory reports and ordered parts/supplies.

Notable achievements include keeping complex full with a waiting list, modernizing units with new appliances, fixtures and accessories. Responsible for unit turnovers and emergency maintenance with skills including custom carpentry, counter tops, cabinets, major remodeling, installation of appliances, hot water tanks, plumbing, electrical, drywall repair, texture and paint.

Include letters of reference from tenants.

Western Homes http://westernhomesapts.com/

Job History: Crab Fishing Process Foreman

I flew to Anchorage, Alaska then took a small plane to Dutch Harbor.  I went on board the Diomedes, a Russian owned crab fishing and processing vessel. We were the only boat allowed to fish in the Russian Sea of Okhotsk. During 6 months at sea, I became experienced in pulling crab pots with live crab using the Hansen Hauler hydraulic system and sorting male/ female and legal sized crab. Skilled at baiting crab pots on deck of vessel. Experienced in all phases of seafood processing and packing including butchering, cooking, and packing of crab. Also including freezer on and off loading of finished product and supplies. Promoted to process foreman in charge of 13 men and responsible for additional duties included  quality control, cooking and freezing of product, and maintaining processing equipment.

Job History Of Final Detail Cleaning Foreman

In charge of final detail cleaning of new construction projects. Promoted to foreman in charge of leading cleaning crews from 13-22 men on large scale projects to government standards.

One Pacific Tower – 2000 1st Avenue, Seattle, WA 98121

Lead cleaning crews of up to 22 men to provide final detail cleaning for turnover completed project to owners. One Pacific Tower is a 27-story luxury tower on 1st Avenue on the edge of Belltown and Downtown Seattle just 2 blocks from Pike Place Market. The affluent 27-story tower features a 24-hour concierge, indoor pool, guest suite, club room and 80 units which boast expansive western views.

Everett Navy Exchange
Lead 13-22 men crews to final detail clean the entire 60,000 sq ft mall after 18 months of construction. The amenities included full size auto repair shop,  hair salon, dry cleaners, food services, retail sales, large restrooms, and 1000’s of square feet of windows. This was an enormous project to manage, and even back then I used a computer to come up with solutions to time, project and staff planning and management.

Ford Golf Classic Online Registration Form

Since 1989, Ford Golf Classic funds have provided financial assistance to thousands of SVC students of all ages. I am proud to have been chosen to create and maintain a paperless form for sponsors to register and pay for the event. I created the user interface using  responsive HTML5, JavaScript, JQuery.  On the back end, the web application is using my API written in ASP to talk to SQL Server. I used automation algorithms to have the form open and close at appropriate times. I have used responsive disclosure and live view error reporting to guide user through the registration and  ensure a great user experience.

My process to create this kind of paperless application is derived from the Model View Controller programming model. I start by outlining the tasks in my project management cloud, setting myself up for success with a clear roadmap toward the well defined end goals.

The next step is to create the I/A Documentation:

Then I develop the UI view and the application logic following the plans I have created.

The final stage is to run all of the user stories and case scenarios, noting and fixing any problems discovered by the tests.

 

 

Get numbers from end of string JavaScript Regular Expression

Here is a regular expression that will match the numbers at the end of the string and return an array with the match it made.

var mystringwithnumbersatend="mycoolname32";
var thenumbersmatch = mystringwithnumbersatend.match(/\d+$/);
if(thenumbersmatch){number=thenumbersmatch [0];}

To use the number in a calculation, make sure to parse it:

number=parseInt(number, 10);

Remove Quotes From A String Using JavaScript

If you ever need to strip out quotes from a string, here is a handy Regular Expression. This will remove any single or double quotes from the var str.

function delquote(str){return (str=str.replace(/[“‘]{1}/gi,””));}

 

Example:

str=”My string’s really “quoted”, eh?;

delquote(str); // returns My strings really quoted, eh?

Working with numbers in JavaScript

Make a string into a number for use in calculations : Number(string);

Round a number to certain place after making calulations:
The Math.round() function returns the value of a number rounded to the nearest integer.

Math.round(x)

The Math.abs() function returns the absolute value of a number.

var abs = Math.abs(x);

The Math.floor() function returns the largest integer less than or equal to a number. This is basically to round DOWN:

Math.floor(x) 

The Math.ceil() function returns the smallest integer greater than or equal to a number. This is to round UP:

Math.ceil(x)

Using jquery document delegate to create Inline Editable fields.

I have come up with a technique to allow the user to edit content “Inline”.

Lets look at an example. I have a table of data, and the user needs to be able to edit the “Description” Field. Rather than take the user away from this ui view, I wish to enable “Inline Editing” like many powerful applications are offering these days.

The first step is to assign functions to the correct fields and capture the users input events. The user would click on the field to select it, so lets set up a doc delegate event to capture a click on the description field. We need to use doc delegate because the data is dynamic and so isn’t  in the DOM when the events handlers are normally assigned. Read my post about JQuery Document Delegate to catch up on this technique. I am going to delegate the capture of a click event on any table row <tr> with a class of “editBannerDescription”

$("#bannerslist").on("click", ".editBannerDescription", function(e){
var thedata=$(this).html();
alert(thedata);
 });

Yeah boyeee we have captured a click event for any element in the bannerslist table, and have access to the content that is in the table cell.

The next step is to alter the ui view so the user can edit the contents of the description table cell. I use a JQuery / JavaScript function to accomplish this:

enableEditDescription(object, bannernid){
     console.log("Message from enable Edit Description function: lets 
enable to edit the description of slide id:"+bannernid+" from
description of : "+$("#"+object).html()); }

I will continue to modify the enableEditDescription function to alter the ui view when the user clicks. I will grab the content from the cell, and replace the content with a text area whose value is the text that was in the cell.

The final code looks like this:

$("#bannerslist").on("click", ".editBannerDescription" , function(e){
var thedata=$(this).html();
var object=$(this).attr("id");
var getbannernid = object.match(/d+$/);
if(getbannernid){
    bannernid=parseInt(getbannernid[0], 10);
    console.log("Message from banner admin inc, here in doc delegate for 
     editBannerDescription with content of :"+thedata+" in cell 
     object id: "+object+" for banner nid: "+bannernid);
     enableEditDescription(object, bannernid);}
else{ alert('error getting id');}
 }); // end #bannerslist doc delegate actions

Now, when the user clicks a table cell with editable content, the cell changes into an inline editor.

The user needs to be able to “escape out” of the edit mode, discarding any changes that were made in the field.

Lets start with capturing the escape key press event when the user is in an editing field. We’ll use the good ol doc  delegate to capture this as so…

$("body").on("keydown", "textarea, input", function(e){
if(e.keyCode==27){
console.log("We have key press of escape key, on event target " + e.target.id + 
" lets exit edit mode without saving changes. Lets decide what place they're editing...");}
}); // end on keydown event handler

Now I can put back the original content of the cell and the user will have “escaped out” of edit mode.

The next step is going to be really fun. We are going to capture the press of the “Edit” button and save the new content into our cms.

SQL Server Resources

SQL server has some drastcally different techniques than one would use on MySQL. Here are the resources I have used to power through the projects I am assigned.

Truncation of insert when too large for field doesnt happen in SQL. It causes an error and the transaction is canceled.

http://www.mssqltips.com/sqlservertip/2857/silent-truncation-of-sql-server-data-inserts/

 

Here are the filter conditions for queries:  http://msdn.microsoft.com/en-US/library/k58xx95s%28v=vs.80%29.aspx

 

The “text” datatype has been depriciated, need to use varchar(max)now.

to change a fields datatype definition.

ALTER TABLE dbo.YourTableHere ALTER COLUMN YourTextColumnHere VARCHAR(MAX)