Joseph Lewis Loutzenhiser

"That's not half bad."

Personal

About Me

Native Oregonian. Born and raised in Portland, summers in Seaside, Gearhart, north coast, college in Eugene, resident of Ashland since 1990. Technically I've lived in Ashland the majority of my life, but northern Oregon still feels like home to me.
Proud father of two grown sons. The younger working at a local publishing company. The older is working at a shoe manufacturing company in Philomath. When your children are young you wonder what they might be like once grown and then they turn out more wonderful than anything you had imagined.
Spoken for.
Single sibling - a sister. She's got more character, creativity, fire, and gumption than anyone I know. Also, she takes care of my aging father, so she's an angel as well. They live on the other end of the state, and I miss them both.
Went to college for writing, never finished. Discovered computers and programming and pursued that instead.
A dabbler essaying a polymath. I have many personal interests, any of which I might be avidly pursuing at the moment: board-gaming, field recording, cooking, nature enthusiast, hiking, camping, dragonflies, birding, photography, science, hobby programming, video games (PC, Nintento), biking, books, basketball (not so much after I tore my Achilles), cinema, RPGs, cars & driving, travel.
Apolitical, unbiased, and unpolarized. Skeptical and pragmatic. Abhor labels. No social media. Smart phone is nearly 8 years old. Permanent media diet. Not part of a brand. Got my quills up online with Duck Duck Go, Privacy Badger, and a hosts file ad blocker.
Travels: Canada, South Korea, North Korea, Hong Kong, Thailand, Malaysia, Singapore, Netherlands, Italy, Austria, Germany, Mexico, Costa Rica.
Idiosyncrasies
  • For my entire adult life I wore hiking-shorts year 'round, but then in 2020 my body just reversed to being always cold and now I wear long underwear deep into spring.
  • I'm prone to misadventure, much to Laurie's chagrin. Still I get out there, and I have great stories.
  • Only coffee is an espresso early each morning.
  • Can't stand raw onions, enjoy most everything else - particularly spicy food.
  • We keep chickens in our backyard.
Favorites (well, at the moment)

Outside Information

Current Distractions

About This Website

I registered the domain cognivore.com in June of 2000. I even had a personal domain before that - altair-4.com. It was the time of The Great Domain Gold Rush and I wanted to stake my claim for the handle I had started using on-line (and still do - it's the domain of this website).

Initially cognivore.com ran on a Toshiba Pentium II 50MHz sitting in the server room at Project A. I ran an email and Unreal Tournament and/or Quake III Arena server on the box as well. The primary purpose of having a web site was to post pictures of my kids for my family. You can still see them if you go to /yesteryear. Since my mom died and my dad doesn't go online I have not maintained the site and now have re-purposed it as my vanity site.

cognivore.com got upgraded through the years, getting more RAM and then second CPU, and then when I was hired at Vortx moved entirely to a monster used Dell rack-mount server. We had no rack, so it just sat on a shelf. Now cognivore.com runs somewhere out in cloud, on some hosting service that Vortx uses, and I gave up on running my own email and use Gmail (never the website - I just use it for the email store and spam filtering).

It's weird to have the same domain for 20 years. Makes you feel old.

cognivore.com is written in straight up HTML using Bootstrap. Nothing fancy and static HTML for speed.

The Setup

I use Windows 10 Professional, running on a beastly Falcon Northwest machine that I named "Sherman" because it's built like a tank. The case reminds me of an old time wood stove. It takes up a bookshelf all by itself. I like it because it's super quiet while being super fast.

Windows 10 Professional
eM mail client
Discord
Chrome for Youtube
Firefox for everything else
Picassa 3
ThumbsPlus
Audacity
Notepad++
Multi Commander
Visual Studio and Visual Studio Code
FileZilla
VLC
Spotify (because what else?)

Not Too Tall Tales

Ruminations

Professional

Employment History

(revese chronological)
Vortx, Inc., Senior Software Developer, leadership Jo Benson and Dana Greaves (2006 - current).
Full stack developer, from UI to DB and everything in between. Started by writing custom software in .NET, primarily e-commerce. Evolved over time to contributing features and fixes to e-commerce platform AspDotNetStorefront and Vortx's Editions - verticals targeted at specific industries written on top of AspDotNetStorefront. Primary focus on integrations and implementing service based architecture for legacy refactors and new features.
Tools: Visual Studio, Visual Studio Code, git, GitHub, Azure Dev Ops, SVN, Tortoise, Beyond Compare, SSMS, Firefox (with Developer Tools), Postman/Insomnia, Seq, Docker, Octopus Deploy, TeamCity, Notepad++, Selenium, IIS, MultiCommander, Teams, typical office software.
Technology: .NET (.NET Core), C#, WCF, ADO.NET, ASP.NET MVC, EF (EF Core), JavaScript, jQuery, SQL, LINQ, LINQ to SQL, LINQ to Entities, Dapper, HTML, CSS, LESS, Powershell, JSON, XSLT/XPATH, Serilog, Javascript framework du jour.
Project A, Inc., Software Developer, leadership Dena and Jim Teece (1996-2006).
General purpose software developer. Primary developed websites, but desktop applications as well.
Tools: TextPad, IIS, SSMS, CVS, Access, Norton Commander, Netscape Navigator, IE, office software.
Technology: Classic .ASP, JavaScript, HTML, CSS, VBScript, SQL, Visual Basic.
Paul Mace Software, Clerk, leadership Kathleen Kahle and Paul Mace (1993-1996).
Started out performing office tasks, but moved on to helping support development of GRASP, their multi-media programming language.
Tools: Mr. Ed, Norton Commander, Paradox, CompuServe.
Technology: C, GRASP.
Freelancing, with Doug Zeffer.
Created software for a recipe kiosk for use in grocery stores.
University of Oregon Camp Adventure, Camp Counselor, leadership Dr. Christopher Edgington, with Laurie Schaaf.
Developed and implemented a "Computer Camp" for children of service members and employees of Yongsan Garrison in Seoul, South Korea.
Photo & Sound, Clerk.
Mass assembled computers, deployed and networked them on site.
Montgomery Ward, Data Entry & Customer Service Clerk, leadership Walt Danowski.
Data entry and credit approval.

Outside information

The Journey

I am a second generation computer programmer. My father started programming mainframes in 1966, through to retirement, for the banking and shipping industries. He programmed in assembly language and COBOL, and could read core dumps like it was English. My sister was also a programmer and taught programming as well.

My first job was as a Credit Approval Clerk at Montgomery Ward, working thirty plus hours a week while I was in high school. I was the first male Credit Approval Clerk at the Hillsboro branch. While not on the phone we did data entry, and through this I became a proficient touch typist and gained a lifetime love of mechanical keyboards.

Early on I wasn't interested in computers and programming. Fresh from graduating from Benson Polytechnic I enrolled at Portland State University as an engineering student. But after one term I decided the program wasn't for me and switched to English with an emphasis on writing. I won a few creative writing scholarships, and when my best friend Mike Masat told me he wanted to go to University of Oregon, I used the money to go with him.

Montgomery Ward was kind enough to transfer me to a position at their Eugene branch where I worked the customer service desk. As is frequently said, everyone should work with the general public at least once, and I paid my dues and gained some wisdom. I even had someone take a swing at me over the counter.

While I was meandering through getting an English degree, working and going to school in opposing amounts based on my savings, my roommate at the time purchased a Mitac 8088 PC. He had no idea what to do with it, and neither did I, but I could take a crack at getting it figured out. It only took a day before I was hooked (it took longer to get the PC setup). Eventually I got Princeton Graphics and Lotus 1-2-3 installed, and even wrote a simple menuing system so you didn't need to use DOS commands to run programs and navigate.

Soon I was utterly fascinated by computers and software, and I wanted my own PC. I sold a good portion of my comic and stamp collections and bought an IBM PS/2 Model 30 286, for $1800, with a 12" monochrome monitor and a Model M keyboard. They keyboard was worth it alone. I still have it.

I spent hours tinkering, neglecting my studies, learning the ins and outs of PCs. I got a dot matrix printer and started using Microsoft Word to write my English papers, as well as becoming an editor for others. I subscribed to various computer magazines and became the "computer guy" of our group. Eventually I was setting up and maintaining the computers for most of my friends.

My girlfriend, Laurie, graduated and was about to go on six months of practicum overseas. I had little interest in college anymore, so when she left I moved back to Portland and got a job at Photo & Sound. There I helped mass assemble PCs for various large corporations, deploy them on site, and network them. These corporations frequently had us install software for them, and I became exposed to various software development tools and languages. I purchased one myself, REXX, and got the Cowlishaw book as well. I was enthralled all over again. I soon started writing little utility programs to improve my job productivity as well as just to tinker. I started to think I wanted to be a professional programmer, and set that as my goal.

When Laurie came back we lived in Portland for awhile, but then we got an opportunity through her department head at University of Oregon to help run summer camps on military bases through a program called Camp Adventure. Laurie and I were tasked with developing a computer camp, the first Camp Adventure would offer. We worked up a program and that summer left for Yongsan Garrison in Seoul, South Korea. It was an great experience and I loved Korea and its people. After Yongsan there was a one week camp in Hong Kong as well.

We had an opportunity to travel when the camps were over and Laurie and I chose to explore Hong Kong, Thailand, Malaysia, and Singapore. Before we left I purchased a book on programming in C. Along with Len Deighton novels I picked on up the road it was my travel reading for the entire trip. By the time we got home I had a working knowledge of C.

Back in the United States we decided to move to Laurie's home town, Ashland. There I began studying programming in earnest on my own time, mostly using Borland Turbo C.

I was fortunate to be hired at Paul Mace Software as a clerk. Initially I performed office tasks, but after showing aptitude, I was given the company's Paradox database to manage. In a few weeks I had improved the various business applications and increased database performance. Paul Mace's primary product was GRASP, a scripting language for working with graphics and making presentations, and eventually I helped develop some of the support applications for GRASP, primarily in C, as well as providing support to developers on CompuServe. Paul and Kathleen were exceptionally helpful in providing me opportunities to grow and learn, and their lead developer, Max Templeton, provided me insightful and patient instruction. I am indebted to them for the later success I experienced.

Around this time I purchased a copy Borland Delphi, creating my own productivity applications for use at home and work. Delphi was by far my favorite development tool. The IDE and GUI builder were excellent, flexible, and easy to use, and Object Pascal was much better than the other languages I used on a daily basis.

A couple of my friends, Jim and Dena Teece, ran a software development company, Project A, and Jim convinced me to join their team. Project A gave me the opportunity to work full time as a programmer. I flourished there, learning various new technologies, and working with some of the most capable co-workers I have known, many of whom became my friends. I also started working with this new nifty thing called "the Internet." We developed web sites using Classic ASP and Visual Basic, backed by Microsoft SQL Server, and Project A's website creation system became Site-in-Box, which is still in use to this day. I had other duties, such as tech support for Jeffnet, helping maintain desktop applications written in Access, and whatever else might be needing doing, including onsite deployment of computers and software. Jim and Dena provided an environment for growth, and I learned much at Project A.

One of my friends from Project A, Josh Belden, had since moved on to another company, Vortx, and was working in Microsoft's new technology, .NET. .NET seemed like the future for Microsoft focused shops, and I wanted to work with it myself, seeing it as an opportunity to further my development as a programmer. After carefully ruminating on it I decided to apply at Vortx and was accepted. Leaving Project A after ten years was the hardest professional decision I ever made.

At Vortx they definitely swam in the deep end of the pool. I entered into the most intensive program of self-study since my early days. I delved into C# and .NET, and applied the lessons learned from McConnell's Code Complete and Rapid Development. I had always enjoyed reading programming books, Bentley's Programming Pearls, Hunt and Thomas' The Pragmatic Programmer, Brooks' The Mythical Man Month, and many others, and at Vortx those methods and concepts got put to use. Soon I was fairly proficient in C#, and found it to be my favorite programming language, supplanting Delphi. My co-workers, and particularly Lead Developer Josh Belden, were immensely helpful.

Early on at Vortx we had the need to develop an e-commerce website, but our current e-commerce offering was deprecated, so I was asked to research and choose a new platform. I came upon an e-commerce website package called AspDotNetStorefront, and other than it was a mouthful it seemed good. It was targeted at developers, built on .NET, and included a lot of features we needed. Little did I know at the time that Vortx would expand its use of AspDotNetStorefront to become the primary focus of the company, and then eventually Vortx would purchase AspDotNetStorefront.

After aquiring AspDotNetStorefront we discovered that the code-base had seriously deteriorated and required some immediate triage to expunge the most serious bugs. Our early releases were about getting AspDotNetStorefront solid. AspDotNetStorefront was written in .NET Web Forms, and through the championing of Scott Friend, a few years later we moved the front end to ASP.NET MVC. This rewrite allowed for later success with our Editions. ASP.NET MVC, with C#, have become my all-time favorite development technologies, particularly now with the advent of .NET Core.

Through the years at Vortx I've progressed, as Vortx has progressed, from developing custom one-off solutions to maintaining Editions - verticals specific to an industry. Of the development staff I was the last to move to the Editions, as I had an aptitude for being able to deliver a diverse number of solutions with varied technology which lends itself to the challenges of custom development. I have also developed a number of integrations for AspDotNetStorefront and our Editions. Usually these integrations are based on exploratory work I have done on my own time that I then bring to Vortx to polish.

Now fifteen years later I work across the full stack, from the database up through to the UI, adding features and fixes to AspDotNetStorefront and our Editions.

Vortx maintains exceptionally high coding standards, I believe much higher than the industry at large. This was the result of prolonged effort by our Lead Developer Josh Belden and our Lead Architect Jason Addington. Josh and Jason are no longer at Vortx, but the culture they instilled lives on in the quality of code I create and deliver, and I am thankful for the high standards they set.