Fog Creek Software
Discussion Board

Full Circle ?

I just had a strange thought which I would like to share.

Twenty years ago, I was doing Z80 machine code programming and wrote an assembler to make life easier, converting opcodes and arguments into executable code.

Now, in my latest project, I'm creating a dynamic Business Rules engine, which involves using Reflection.Emit to convert opcodes and arguments into executable code.

I must admit that doing this in VS.NET is a lot nicer than writing the assembler in assembler (talk about bootstrap), but I thought it was bizarre that I'm doing pretty much the same thing again.

Anyone else had this kind of deja vu experience ?

Steve Jones (UK)
Sunday, July 18, 2004

Several years ago at work, a new manager came in and made all sorts of changes.  Everyone complained and he gave us the standard lecture about "change" and how we must "continually change in order to stay competitive".

A few years later, he leaves and a new manager comes in.  He makes all sorts of changes.  Everyone complains, we get the same lecture.

A few years later, he leaves and a new manager comes in.  He makes a lot of changes.

Most of his changes put us right back where we started.

The more things change the more they stay the same.

M. Night Shammalammaram
Sunday, July 18, 2004

Steve -- couldn't you use CodeSmith or run-time compiled C# code for the same purpose? Reflection.Emit is not normally something you need to use unless you're writing a compiler.

Chris Nahr
Sunday, July 18, 2004

Managers worry about personal careers. They do the same managerial things learnt from the books, courses, etc. They need a plan and budget.

Developers use past experience to write a next software. They write software twise, but when it comes to the third time, they move to a next work to write twise another software. They need work and new experiences.

Repeating the same steps is called Patterns. There are should be Managerial Patterns, Software Patterns, 101001011 Patterns..

Evgeny Gesin /Javadesk/
Sunday, July 18, 2004

"Reflection.Emit is not normally something you need to use unless you're writing a compiler."

Er, he is doing that - he's compiling business rules into executable code of some description.

code is just instructions to a computer
Sunday, July 18, 2004

Steven Spielberg has been making UFO-type movies for 25 years:  E.T., Close Encounters, Taken, etc.

Some archetypes never die.  Some basic engineering methods never die. They just get recycled.

Mr. Analogy
Sunday, July 18, 2004

Business has been doing this for ages.

50s - The Demming System of quality control
60s - Zero Defects Programs
70s - Statistical Quality Control
80s - Total Quality Management
90s - Six Sigma Programs

00s - Lean Programming concepts based on the works of W. Edwards Demming from the 1950s

They're all the same thing but each NEW idea just adds a layer of bullfeathers on top of the previous.

Monday, July 19, 2004

*  Recent Topics

*  Fog Creek Home