George V. Reilly

Sample ASP Components: now at Github

From October 1996 to May 1997, I wrote a number of sample components for the then-new Active Server Pages (Classic ASP). I worked for Mi­cro­Crafts, a consulting company in Redmond, WA; the samples were written for Microsoft’s Internet In­for­ma­tion Server (IIS) team. Most of the components used Microsoft’s new Active Template Library (ATL), a C++ library for COM.

This work had two important con­se­quences for me: Microsoft recruited me to join the IIS de­vel­op­ment team to work on improving ASP per­for­mance for IIS 3, and Wrox Press invited me to write Beginning ATL COM Pro­gram­ming I was originally supposed to be the sole author of the book, but I was a slow writer and I was caught continue.

Turn off Windows Defender on your builds

I’ve spent some time this evening profiling a Python ap­pli­ca­tion on Windows, trying to find out why it was so much slower than on Mac or Linux. The ap­pli­ca­tion is an in-house build tool which reads a number of config files, then writes some output files.

Using the Run­SnakeRun Python profile viewer on Windows, two things im­me­di­ate­ly leapt out at me: we were running os.stat a lot and file.close was really expensive.

A quick test convinced me that we were stat-ing the same files over and over. It was a com­bi­na­tion of explicit checks and implicit code, like os.walk calling os.path.isdir. I wrote a little cache that memoizes the results, which brought the cost continue.

Review: Backbone.js Testing

Title: Backbone.js Testing
Author: Ryan Roemer
Rating: ★ ★ ★ ★ ½
Publisher: Packt
Copyright: 2013
Pages: 168
Keywords: pro­gram­ming, testing, javascript, backbone, mocha, chai, sinon
Reading period: October 2013

Backbone.js Testing is a short, dense in­tro­duc­tion to testing JavaScript ap­pli­ca­tions with three testing libraries, Mocha, Chai, and Sinon.JS. Although the author uses a sample ap­pli­ca­tion of a personal note manager written with Backbone.js throughout the book, much of the material would apply to any JavaScript client or server framework.

Mocha is a test framework that can be executed in the browser or by Node.js, which runs your tests. Chai is a framework-agnostic TDD/BDD assertion library. Sinon.JS provides standalone test spies, stubs and mocks for JavaScript. They complement each continue.

Adapting Penelope, part II

Last night, I read the first third of the chapter. Tonight I will read more.

I described it as “badly punctuated.” There’s no punc­tu­a­tion at all! No apos­tro­phes, no commas, no periods. The “sen­tences” are separated by paragraph breaks.

So far, Molly Bloom has thought back to Mrs Riordan, an obnoxious elderly neighbor whom Leopold Bloom flattered; sickness; Bloom’s in­fi­deli­ties, present and past; her own seductions and con­fes­sion­s; sex and child­birth; jealousy; ag­gra­vat­ing husbands.

In the second paragraph: men are all so different; how strange Bloom is; Bloom is “mad on the subject of drawers”; their first sexual encounter; punc­tu­al­i­ty; a potential singing trip to Belfast with both Bloom and Blazes Boylan, her paramour; her last concert; hating politics; money; well-dressed men; losing weight, face lotion, and beauty continue.

Adapting Penelope, part I

We at the Wild Geese Players of Seattle have been adapting James Joyce’s Ulysses for staged readings since 1998, and we will complete the book with the Penelope chapter (aka Molly Bloom’s soliloquy) on Bloomsday 2013.

I shall detail my dra­matur­gi­cal process over several blog posts.

The very first step is to re-read the chapter. It’s been several years since I last read it and I don’t remember it clearly. I’ve yet to look at my old friends, Gifford and Blamires, for their takes on “Penelope”.

Molly is lying in bed, day­dream­ing early on the morning of June 17th, 1904. Leopold climbed in to bed a little while ago, put his head at her continue.

Static Website Conversions

I’ve spent time over the last three weeks working on a new website for the Northwest C++ Users’ Group. I blogged about the NWCPP website refresh over there. In brief, I moved the website from an instance of the Joomla Content Management System at Just Host to a static website generated by Pelican and hosted at Github Pages, and I’m happy with the results.

Not only am I the Webmaster (and Secretary) of NWCPP, I am also the webmaster for several other or­ga­ni­za­tions:

30 Years of Programming

30 years ago today, I sat down at a computer for the first time, and I wrote my first program.

I was in Fifth Year of secondary school in Ire­land—the equivalent of eleventh grade. Personal computers were just coming into Ireland; few people had them. I had been taking an ex­tracur­ric­u­lar course in computer pro­gram­ming, in the school’s physics lab. We wrote code on paper at our desks, as there were no computers in the room. Somehow, I hadn’t realized that there was another room with computers, in a normally off-limits part of the school, until late January.

Once I sat down at a computer, I was hooked. PRINT 2+2? 4! Writing code on continue.

Christmas Pudding

Tra­di­tion­al Irish Christmas Pudding.

This recipe comes from my mother, who has used it for many years. I added the soaking of the fruit in hot water.

This amount makes one large pudding and two smaller ones (4–5 quarts), so scale down to your needs.

Stick a sprig of holly in the top before bringing to the dinner table. When it’s placed on the dinner table, heat a tablespoon of brandy or whisky over a flame until it catches fire, then pour over the pudding. Turn down the lights to enjoy the blue-tinged flames.

Serve with Brandy Butter.

1 lb Raisins
1 lb Sultanas
1 lb currants
1 lb suet (if you can’t get suet, you could use ½lb butter)
¾ lb mixed peel
½ continue.

SerializationException: the constructor was not found

I just finished another post at the Cozi Tech Blog, Se­ri­al­iza­tionEx­cep­tion: the con­struc­tor was not found

Security 101 for Developers

The Cozi Tech Blog needed some love, so I wrote a post a couple of weeks ago on Security 101 for Developers.

Previous » « Next