Archive for Justin

About the Author: Justin
A 34 year old Software Engineer in Seattle, WA with a love for coding, music, video games, and the great outdoors.
Author Website: http://www.justinmangue.com

Week 1: Project Proposal – First Draft

Project title: Application & Integration of Prolog

Area of research

AI and either robotics or symbolic manipulation (see below), as well as cross-paradigm language interaction.

Short project description

I need to do a bit more research to figure out if this is fully feasible, but I hope to integrate the Prolog language with a robotics visualization suite. The end goal of this is to allow for usage of logic-based programming in simple robotic decision making.
Why is all this of any value? Because Prolog’s resolution engine offers very finely-tuned depth-first-search and backtracking systems, and Prolog itself benefits from a rich history of AI application.

If it works, I should be able to create a simple robotic simulation which is using a Prolog component to perform some simple decision-making tasks.
There is a possibility that the above may pose technical limitations beyond the scope of this project. Should my efforts in the short term to access the Prolog interpreter from robotic control code fail, I will instead switch gears and focus on implementing an automated equation solver in Prolog– something which has actually been done before. As I am very interested in tapping into Prolog from other languages, I will write a Python wrapper to access and display the functionality of the equation solver.

Prior knowledge

I previously studied Prolog in the Computability program here at Evergreen. The main projects I have written so far include a lexer and parser for a subset of C, an implementation of the Bellman-Ford shortest path algorithm, and some constraint-based logic puzzle solvers.

Resources needed to accomplish the project (textbooks, manuals)

In order to successfully integrate Prolog with robotics simulation software, I will need the software itself. Microsoft Robotics Developer Studio is free, but API calls to the simulator seem to require C#. I have found a simulation package called Webots which has a free 30-day trial and supports C, which I am much more confident that I can interface Prolog with.

On the Prolog end, I will be using the SwiPL implementation which offers some good built-in API functionality for calling it from outside sources.

Other students you know of (if any) interested in related topics

Unknown. I know that Richard has a strong interest in robotics.

Short Bibliography

I intend to use the two following textbooks to reinforce my Prolog knowledge:

“The Art of Prolog”, Sterling and Shapiro.
“Prolog Programming for Artificial Intelligence”, Ivan Bratko.

The purpose…

I have begun this page in an effort to track my project for the “Computing Practice and Theory” program at The Evergreen State College. Stay tuned for updates!

Prolog implementation of a C-lite parser

Wrote a Clite parser– in Prolog!
Read more

Vive La France – Day 7

Today we were invited to the house of Pascal and Lucille, who live near a city to the southwest called Belfort.  They had a very cute house with a beautiful backyard and garden.

One of Lucille's cats hunting for rabbits.

Leonie went down this about six times in a row!

We enjoyed a long leisurely lunch with the family.  There was a potato dish that had melted cheese that was out of this world.  Pascal served us some truly amazing wines as well.  Between champagne, chardonnay, 1995 Bordeaux, and homemade schnapps, I was feeling pretty happy and toasty by the end of the meal!

Lunch in the sun room. After meals like this I need to go on a diet!

Pascal’s daughter had made him a big rendition of the family tree on a corkboard that we ogled over, and filled in dates where we could.

Ye olde family tree.

Pascal showing off a huge bottle of eau de vie he made. It was so good!

After lunch, we headed into the city of Belfort. This is a city made famous by it’s strategic position, and features a colossal stone fort dating back to the 17th century. It has survived periodic German occupation as well as long sieges.

Waiting for the tram in Belfort.

We took a guided tour through the gates of the fort and to the top, which boasts a spectacular panoramic view of the area. The fort itself looked impregnable, with steep thick stone walls.

Aerial view of one wing of La Citadelle in Belfort.

The new lords and ladies of Belfort.

I'm so glad my feet aren't THIS big.

Commemorating a long siege of the fort, the famous sculptor Bertholdi (who also designed the Statue of Liberty) built the Lion of Belfort, a sphinx-like statue adorning the front of the fort. Urban legend had it that Bertholdi killed himself because he forgot to sculpt a tongue inside the lion’s mouth, but I guess a recent renovation actually revealed that the statue does indeed have a tongue, it was just hard to see.

The Lion of Belfort.

Pascal took us on a tour of the town, and we went to the stables near his house where his daughter keeps her horse.

Pascal and Nadege's horse.

We headed back to the house for a lovely dinner with a huge dessert course. Unfortunately my camera battery died at this point. We lingered long into the evening talking and sipping moscato, before bidding our goodbyes and coming back home to pass out. Another fantastic day!

Vive La France – Day 6

After the big day yesterday, we decided to celebrate the mid-point of our trip with a more low-key, relaxed day.  I slept in until noon and awoke to finish my coffee just in the nick of time before cremant was poured and lunch began.  Apparently we lucked out and have had warm sunny weather most of the time we have been here; today, we took advantage of it to enjoy our lunch out on the deck.

Santé!

We were visited by Roger’s mother, the original Marie Gensbittel.  Later in the afternoon, Jean and Claudine came over as well.  Lunch was barbecued pork chops and prawns.

All in all, it was a leisurely afternoon full of easy chatting.

Three generations of Gensbittel!

Old pictures were pulled out and family resemblances were made.  Jean gave my father a pretty sweet French hat:

A few of us took a break to go try and find a geocache, as I have a travel coin that I really wanted to drop off at a cache in France. Geocaching, for those who are not in the know, is basically an internet-assisted global treasure hunt that has become a somewhat popular hobby.  When I mentioned it to the people here, no one had heard of it before… even though there are a ton of caches out here.

So we set out, map in hand, to try to find a box hidden along the river Doller.

The Doller River, complete with dam and fish ladder.

Unfortunately, we spent an hour just doing this:

"Is it over there maybe?"

We eventually gave up.  I think maybe someone had stolen the cache, as we found the place where it should have been, but it was nowhere to be seen.  It was a bit disappointing, but at least we got a nice hike and a view of a beautiful river out of it.

Later in the evening, we dropped the elder Marie Gensbittel off back at home.  She was very excited to show me a lot of her photos and decorations.  She lives on the old family farm in Burnhaupt, so I took the opportunity to take a few pictures of the farm as well as the church across the street, which she used to help caretake.

I am so grateful for faucets!

The Burnhaupt church, newly renovated.

Upon our return, we had a nice light dinner and a cheese plate out on the deck.

Voila!

Later on, Heidi taught the girls how to bake her cookie recipe, and I lounged for a bit.

Warm cookies fresh out of the oven was the perfect way to end the night.

A few bad hands of Uno later, and I was ready for bed.

Vive La France – Day 5

After the excitement of the previous day, we decided to take it easy for a bit.  I took a light breakfast of coffee and bread with marmalade to fuel me up for a leisurely bicycle ride through the neighboring villages.

Marie, the professional tour guide.

The weather was perfect and we all got a bit of sun.  A lot of the countryside in Alsace looks like this:

Rolling grassy hills with corn, wheat, and cows.  And, of course, churches and cute villages.

The church in Bretton.

We were the most exciting thing this cow had seen all day.

A traditionally-styled house with gardens.

Rolling around through one of my favorite foods, corn!

We made the most out of the sunshine by having lunch out on the deck.  In the distance we could see a member of the family, Joseph Mangue, driving his tractor around harvesting hay.  Lunch was beef bourguignon with spätzle noodles.  It was pretty awesome.

Roger poured me a glass of my first Eau de Vie.  This is a digestif similar to a grappa but made from orchard fruit, in this case cherries.  It was good, even though it made me want to take a nap afterwards!

After we finished our late lunch, we all piled back into the car to head back up to the Vosges mountains.  We twisted through serpentine roads and found ourselves along the crest of part of the mountain range.  There were a lot of ski lodges along the way, as well as a big war memorial dedicated to French soldiers.

Just to the right of this photo was the Cross of Lorraine, a big mountaintop cross that can be seen from the valley below.

The top of the highest peak is called the Grand Ballon.  At around 1400 meters tall, it is the highest point in all of Alsace, and offers views in all directions.  We hiked up the trail to the top, tasting berries and looking at flowers along the way.

Roger in front of a radar tower at the top of the Grand Ballon.

View from the summit. The monument is a dedication to Les Diables Bleu, in memory of all the soldiers who fought in the mountains during WWI.

We went to dinner at a ferme auberge (a mountaintop restaurant that was also a farm) where we had omelettes and charcuterie platters with white wine.  Everything we ate was grown right there on the farm.  I ate blood sausage as well as some sort of head meat suspended in jelly, not knowing what they were, but they were actually pretty good.

Mountain living at its finest!

After a quick cup of coffee, we were headed back down the mountains and into our beds.  Another day full of amazing sights!

Vive La France – Day 4

Day 4 was the “surprise day”.  We were told only to be ready by 10:30am.

I began to grow suspicious when a seemingly endless line of Peugeots began rolling into the driveway. We were led to the front door, where the surprise came in the form of a huge welcoming party!  Needless to say, we were all rendered speechless.

We were honored by cowboy hats, flags, and-- most important of all-- family.

After a flurry of introductions and a hurricane of faire la bise, we all packed back into the cars and caravaned up into the Vosges mountains for a big lunch party.

View from the trip up the mountains.

We arrived at an auberge on the summit.  Auberges are basically mountaintop restaurants.  This one was very charming with a lodge-like aesthetic. We took up two big long tables!

It was the setting for a wonderful afternoon.  A delightful local pinot noir that had a very pleasant creamy finish was poured.

And once the wine was flowing, so was emotion as my father made a very nice toast.

Chin chin!

It was pretty much one of the best days of his life, as it has been his dream for over a decade to meet all the French relations, and here he had them all in one room.

An appetizer course of salad and meats was served, and then for lunch we had flammekueche.  This is an indigenous dish made like a very thin pizza with cream, local cheese, lardons and onions.  It was rich and delicious.

As was dessert.  How can you go wrong with this:

We mingled and talked for hours.  Some of the group performed a country line dance.  It shocked me that French people even knew what line dancing was, much less could do it with the best of them, but it was explained to me that it has become a new fashion in France.

Electric slide anyone?

 

My dad had an amazing time being the star of the show.  This will probably be the only time in my life that I see him in a pink cowboy hat, so I have to post this picture:

Jean and Ronald, hamming it up once again.

Leonie was having some fun with the hats as well.

Leonie tries to be taller.

A million, billion photos were taken by everyone.  At one point my eyes were sore from all the flashes.  I have photos with all the people that were there, but I have to stick to the big group shots for the sake of finishing this blog entry.

The French and American sides, reunited at last!

I guess our visit was such a big deal that it may even be mentioned in the local town paper.  All I know is that I left that restaurant with a full belly and fuller heart.

We had an afterparty back at the Gensbittel farm, with drinks and pretzels.  Fabienne brought her accordion out and played some traditional Alsatian music, and people sang along and danced.  The sun was setting and it was very touching.

Fabienne plays and Lucille sings and performs the dance.

After the sun set, everyone said their goodbyes.  Several of them we will see later in the week, but some we will not.  Thank you to everyone who was there, you truly honored us and we will never forget!

We hung out until the cows came home. Literally!

Vive La France – Day 3

I awoke from a deep slumber today at noon.  I came downstairs and was offered coffee and juice, but declined breakfast since it was so close to lunch.  We all went and sat out on the deck and drank kir and pastis… one hell of a way to take the edge off of an afternoon.

Lunch was choucroute, a traditional dish of the region.  It is sauerkraut that is marinated in local wine and served with a variety of sausages and ham.

Elodie with choucroute.

I was so glad that I did not try to eat breakfast earlier!  It was a very hearty lunch, and the ham was out of this world.  And to top it all off:

Creme anglaise with local blackberries, whipped cream and meringue. I could also get used to this lunchtime dessert thing!

I must say that I adore the Gensbittel farm:

The barn holds four of Marie's horses.

After lunch, we set out to explore the local villages.

Typical Alsatian countryside.

My father being the big genealogy nut that he is, this necessarily included a lot of church hunting.

The church in Eteimbes.

I have to say, even after years of seeing church records and family trees, it was coming here and seeing my last name on a tombstone that really (and literally!) set it in stone that the family is from here.

Mangues! A grave in Eteimbes.

We checked out a few other small towns and villages around Eteimbes:

The churches are always the most impressive building in town.

Marie and her boyfriend Frederic.

Sculture of traditional Alsatian people.

Heidi and I by a river in Masevaux, in front of an old textile factory.

The street in Mausvaux was the idyllic French village scene.

After wrapping up our tour of some of the local sights, we arrived at the city of Mulhouse.  We did a bit of shopping; I bought a mint plant in a can.  It looks like a soda can, but you pop the top and add water and supposedly a mint plant will grow out.  Mint juleps anyone?  Mulhouse was pretty amazing.  It was nice to see a more modern side of France.

An outdoor mall in Mulhouse.

Fierce guard dogs.

A sculpture in Mulhouse. It kind of reminded me of a steampunk version of "The Thinker"

I swear, every church I see is bigger than the last.

While wandering back to the car, we stumbled across a park where people were salsa dancing to latin music while a crowd cheered on.  A few pounds kilos of peer pressure later, and Marie and Frederic were showing off their moves.

Salsa time.

While leaving the salsa dancing, Elodie said “I found you a French girlfriend for Holiday, come look!–” and pointed at a six-foot-tall blonde drag queen in high heels.  So don’t worry, Jane!

My sister Heidi is a realtor in Santa Cruz, so I made her pose in front of the local real estate office:

Heidi's new office?

We headed back to the house and had another fantastic dinner of tomatoes & cucumbers, charcruterie, bread, and gratin, along with a bottle of rose champagne.  I tried a piece of charcruterie that was like a big piece of salami with slices of tongue in it.  Yes, tongue. It was actually pretty good, if a bit chewy.  Who knew?

For dessert, we had a cheese plate with local cheeses including munster , morbier, leerdammer, barckass, chevre, and of course brie.  French cheese are mostly unpasteurized and thus taste much better than French cheeses you can buy in the United States.  I was surprised to actually find myself not revolted by goat cheese; it was a lot smoother and less pungent than any chevre I’ve had in America.

More conversation ensued, and well, that pretty much wraps up Day 3!  Tomorrow we have to be ready at 10:30AM for a “surprise”… hmm!

Vive La France – Day 2

The first half of day 2 was more of the same sort of travel stuff from day 1. We landed in Paris, whose main airport could fit every other airport I’ve ever been in inside of it and still be hungry. There was much more of a social vibe to the airport as well, with chic decor, lots of color and boutique shops littered throughout. It took us forever to get through the airport to our connecting flight to Mulhouse/Basel, but we made it.

Our gate in Charles DeGaulle Airport had pink walls with yellow windows!

A hop, skip and a jump later and we were in Mulhouse/Basel airport! This airport is situated on the border of Switzerland and France, so depending on which way you exit you can wind up in either country. Kinda cool!

Meeting us at the terminal in Mulhouse were Marie (who spent the summer with my parents and also visited me in Seattle a few years ago) and her darling mother Fabienne.  We rented a car and they drove us through the french countryside to Eteimbes.  Alsace is all gently rolling green plains interspersed with patches of forest.  The roads in the region are lined with flowers, so the aesthetic of just driving around is pretty amazing.

After a short drive, we arrived at the country home of Fabienne and her husband, Roger.  We were also greeted by Jean and Claudine, who are Marie’s grandparents.  Jean is third-cousin to my father, and it is uncanny how much he resembles my own late grandfather.  Marie’s sister Elodie showed up later as well.  Gifts were exchanged; my father had brought some redwood bowls for the family, and I had brought some of my favorite coffee beans from Seattle.  We had a very warm welcome, toasting with pinot gris over an appetizer of foie gras, and pretzels, which are a common snack in the region due to the influence of nearby Germany.

Chin chin! From Left to Right: Fabienne, Heidi, Jean, Claudine, Elodie, Roger, Marie, Ronald.

Fabienne and Roger made us a wonderful welcoming dinner of pork with onions, potatoes, and a cucumber gratin.  Fabienne tends a beautiful garden on the property from which they get most of their fruit and vegetables.  Jean and Claudine presented us with a stone fruit tart they had baked using fruit from their own trees.  Everything was super delicious, even for an overly picky eater such as myself.  We finished with coffee and chocolate.  I could get used to this kind of living!

Dad hamming it up with the fruit tart.

We talked and talked, late into the night.  Marie is an English teacher, Elodie is fairly fluent also, and Roger and Fabienne both speak some English, so the language barrier isn’t so bad.  Hopefully by the end of these ten days I can pick up a few more French phrases.

Eventually the exhaustion of travelling and being awake for 36-odd hours caught up with all of us, so we all bid our bon nuits and went to bed.

Vive La France – Day 1

Where to start!

I’m laying in a bed in Eteimbes, France, exhausted to the point of cracked-out travel insomnia. I woke up yesterday morning at 4AM, roused by the cruel whip of the ubiquitous iPhone marimba alarm ringtone. After a sentimental goodbye, Jane dropped me off at Seattle Airport. And thusly my trip began.

A quick jaunt to San Francisco and I had joined up with my sister and my father, whose life dream was the catalyst for this entire trip. Around thirteen years ago, my dad was diagnosed with kidney cancer, and had a tumor the size of a football removed from his side. To keep himself busy while he recovered his strength from the operation, he dove into genealogy. Piecing together tidbits passed down through the family along with copious amounts of newly-available Internet research, my dad tracked down the roots of our family to a small farming village in Alsace-Lorraine called Eteimbes. Moreover, we still have living relatives there (who I am *fourth* cousins with). To make a long story short, we made contact and over the years the bond have grown stronger.

Flash-forward back to yesterday. While I was very excited for the trip, I was not so excited for the flight aspect of it. My dad is a really big person and doesn’t walk too well these days, and I was worried about how he– and I!– would fare after being crammed into tight economy class seats for a bajillion hour flight together. Not to mention, the difficulties in getting between terminals and boarding/disembarking planes with a wheelchair.

I’m here to tell you that having the words “wheelchair assistance requested” on your boarding pass is like having a badge that says you are Bono, Batman and Sting all rolled into one. We cut right to the front of every line, including security. Airport personnel escorted us between gates using weird forsaken tunnels and hidden lifts. It was pure, unadulterated rock star status.

So much so that when a family didn’t show up for their flight and there was suddenly an entire empty “family row” that had extra leg room, the stewardess hooked us up. Sure, we had baby bassinet brackets mounted on the wall in front of us, but it was the spatial equivalent of an upgrade to first class.

Air France rocks. Everyone was very helpful, the meals were surprisingly edible (and included Kozy Shack pudding!) and they gave out free red wine with dinner. Being stuck on a plane for 12 hours was still pretty draining, but we were all very relieved at how pleasant the experience was as well.

And so we travelled, crossing timezones faster than a DeLorean headed to 2015. Day 2 to follow…