Sunday, August 27, 2017

canning season! italian stewed tomatoes

Aunt Dottie and my grandmother were both avid gardeners. Although I had no interest in learning how to can from them when I was young, I found myself following in their footsteps.



This year I'm super excited about my garden. Last year, everything sucked. My soil was in a terrible state and nothing grew right. All my tomatoes had serious rot. I tried to correct the ship last year, but alias - it was in vain.

But THIS year! Oh my gosh!


I added a bag of manure to each bed and organic fertilizer. Plus I added some organic tomato food to each tomato plant. I planted 4 roma tomato plants and waited. I also have various pepper plants, broccoli, cucumbers and green beans.



I was SOOO relieved to see my lovely tomatoes come in with NO rot.


I broke out the canning jars and put them in the dishwasher to sterilize them. You can also stick them in the oven at 180 for about 10 minutes. Or.....  if your water bath is nice and hot, stick them in the water for a few minutes.


Then I started my pots. 

One for the water bath, one for blanching the tomatoes, one for cooking the tomatoes, and the little one for sterling the jar lids.


I blanched the tomatoes for about a minute.


Then stop the cooking with a cold water shock.


The skins came right off.


I quartered them and added the ingredients, garlic, green peppers, onion, and oregano. I followed this recipe, the exact measurements are here.


The longer you cook them the thicker they will become. I let mine cook for about 60 mins to reduce the water from the tomatoes in the sauce.


Fill them up leaving about a 1/2 inch. I also added 1/4 teaspoon of Ball Citric Acid additive which replaces the lemon juice. This increases the acidic level of the tomatoes. If you want to read more about that, here is an interesting article.


By now your pot of water should be ready, near boiling point. The water should be about an inch higher than the jars. Put the lid on and let boil for 20 minutes.


I ended up with 8 jars of delicious Italian stewed tomatoes. I've already used them in a few recipes. Sauce tastes so much better when it is home made.



And .... if you're way cool - you'll add these labels to your jars. I have already used up the jars with labels, but it's a nice way to label the date and type of tomatoes. I have washed these jars with the labels in the dishwasher over and over and they still remain awesome.

Saturday, August 19, 2017

mssql, express, and node - working with images

I'm pretty sure no one else has had the experience of sales over selling, over promising the delivery of a product.😅 Am I right?



When the boss came to me with this little project, knowing I couldn't squeeze it into the schedule, I decided it would become my weekend project. After looking at the requirements, I thought it would be cool to stretch my MEAN legs. Except in this case, it would be (MSSQL, Express, Angular, and Node).

There's a few cool aspects of this project, but for this article, I'll just focus on getting the server component running and connecting with Node's MSSQL to the SQL Server.

The requirements were:
  • Must be a HTML5 app
  • Retrieves an image stored in a SQL Server database.
  • Returns images (multiple) based on ID parameter
So here's the snippet.


And the table design was like this:


I figured I would create the Rest APIs, so the product could pull the images from anywhere with Express.

The biggest obstacle I ran into was managing the connection pool. Once, I figured out how to wire it up properly, it was a piece of cake.

To call the API, I used http://localhost:8080/api/images/1.

If I look at the response data in Fiddler, I get something like this back.




So this is an array of 6 images, and the response object is 11043515 bytes which equal roughly 10M - SUPER large for a response object.

So ideally you wouldn't have SQL images stored in your database but rather store the metadata about the image along with the path of the image on a file system.

In the particular instance, it was the customer requirement. I simulated the database with some of my own images and I didn't resize them before storing them. So, in this small sample size - it worked fine and I saw no performance issues, but I definitely wouldn't do this in a production environment.

There were some challenges and a bit of a learning curve, but overall ..... I kind of love this stuff.



Sunday, August 13, 2017

dress hack

Imagine that moment when you realize the dress doesn't fit and the wedding is in 2 weeks.

My daughter is standing up in her friends wedding in August. When the dress came in after waiting 3 months, it did not fit.  It fit in the waist, but was about 3 inches of space between the zipper. It was not going to zip up.


The dress shop would not take fault and there was not another 3 months to wait for another.


The dress shop said, "There's some room in the zipper - just let it out." She called me frantic, and asked me to take a look. Once I figured out there was not 3 inches anywhere in the dress to be let out, we started reviewing our options.

A. Throw major hissy fit and cause a scene.
B. Look online for the exact same dress out of another dress shop.
C. Come up with creative solution.

It's really upsetting when you pay so much money for a dress and it doesn't even fit. The dress shop were idiots and made her feel bad, like it was her fault. That seriously pissed me off. They took her measurements and they ordered the dress.


After weighing our options, we decided to modify the dress converting the back into a corset style. We set out for our local Joann's and found some material to match. The picture lighting makes this look like a lighter color - but the fabric matched pretty well.


We didn't want the eyelets to stand out, so we found some nail polish and coated the eyelets so they were the same color as the dress.

Our shopping list was:

- 1/2 yard of fabric. This ended up being too much, 1/4 yard would have worked with plenty leftover.
- 3 yards of ribbon. We bought this ribbon because it was the only kind that matched. Again, this was way too much. We ended up cutting it in half.
- Eyelets
- Matching thread

Her total bill was $10.00, but we could have gotten away with just $5.00 of materials. Live and learn.


I started out by ripping the zipper out to the waist. Since the dress fit her to the waist, we kept the zipper and just shortened it.


I was even able to save the metal clip that keeps the zipper from coming off the teeth and reapplied it the top of the shortened zipper. Next, we put in a hem to secure the area where the zipper was.


I measured a square about 6x6 of the extra fabric. I sewed the hem all the way around, leaving a small area to be able to turn the fabric inside out. The corners were clipped to lose some of the bulk.


We test fit it into the area we needed to cover.



Using my handy eyelet tool, I added the eyelets to each side. Then I sewed the insert making sure the eyelets were free on both side. You can see the thread line on the left outside the eyelets. 

Using the tool, scrapped some of the nail polish off, so we need to repair the color. I also screwed up one of the colored eyelets, and ended up putting in a silver one. All can be touched up before wearing.


And ta-da! A wearable dress that actually fits her body exactly for about $10.00 in materials.


I think it turned out nice.


Happy bridesmaid ... happy bride too. 

It was the best solution, it allowed her to keep the same dress as everyone else and now she can breathe.

That girl ... never keeps a straight face for a picture. :)

Saturday, August 5, 2017

detroit maker's faire

This year I had the pleasure of going to the Detroit Maker's Faire at the Henry Ford Museum with Saline Singularity - Team 5066, Ann Arbor District winners. This was my first time at a Makers Faire, and I think this one was the place to be.


FIRST Robotics arranged for local teams to do mock competitions all day for the visitors. The playing field was set up. This years theme was "SteamWorks".


We originally set up on the outside of the big tent. They made us take down our shade tent so the spectators could get a better view of the field.


The object of the game was to collect gears and fuel for your steam powered ship. The 2 ships are pictured here. Once you collect enough steam, you fly away with the ship by having your robot climb the attached rope.


We made the wise decision to move inside the tent so we were out of the sun for the rest of the day. The Saline Singularity club members attended to the robots every need and got it ready for a day of mock competitions.


The team next to us rallied for a group photo and I grabbed a shot. I wish I had also got a shot of their team number. I have no idea what team this is, but the kids were very nice. Professional graciousness.


Burke and Holly showed up so we wondered around a bit. I grabbed some photos. This guy was very cool!


There was a driving one man band.


A lot of pedal driven spectacles.


A remote controlled fake dude in a wheel car who spun around and around.


Teeny tiny bikes


Big bikes


And specialty bikes.



Tons of exhibits and fun things to do.


Makers and designers of all types. Some of the coolest fabric art.


This was a part of a sound contest they were having. Lots of different exhibits doing some cool things with sound. Thought this was cool - breakfast sounds. Loved the display. Breakfast of champions!


Lots of people walking through the vendor craft booths.


A robotic horse. Quite possibly nothing cooler.


Even saw a UFO who was very friendly.


One of the FIRST teams brought this, which was awesome. A robotic garage can - took the garage out for you. lol!

It was a perfect day for the Maker's Faire and a great way to expose the FIRST Robotic program to many, many spectators. The crowds were lined up outside the tent all day. Our kids had fun doing mock competitions all day and really got the crowd going.

I'm super proud of our club and I'm glad to be one of the mentors.