The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,854 other subscribers

Archive for the ‘History’ Category

New BitSavers.org PDF scans: Turbo Assembler/Debugger (1993/1994), Borland C++/Object Windows Library (1993)

Posted by jpluimers on 2013/01/17

The PDF Archive at bitsavers.org has recently put online these raster image PDF scans from Turbo Assembler/Debugger (1993/1994) and Borland C++/Object Windows Library (1993)

Remnants of the past, usefull for RAD Studio, Delphi and C++ Builder developers wanting to know a bit of history (: Read the rest of this entry »

Posted in Assembly Language, BitSavers.org, Borland C++, C, C++, Delphi, Development, History, Pascal, Software Development, Turbo Assembler, Turbo Pascal, x86 | Tagged: , , , , , , , | 2 Comments »

Found back my WinImage license (still going strong: What is WinImage)

Posted by jpluimers on 2012/12/10

Every once in a while I need some disk imaging software. After all these years, WinImage is still my tool of choice.

This time, I needed it to create a Creating vSphere 5 ESXi embedded USB Stick.

Usually I only need it for a day or two, and most of the times I have reinstalled my system between uses. Not this time, so I needed to enter the license, which I knew I had, but had to search for it.

Luckily, I have installed the Lookout search tool for Outlook (which – even though you cannot officially get it any more – is so much better than the integrated search).

It found back the below message, from 1997.

1997! And the license is indeed perpetual: it still works on the most current WinImage build (which now supports x64 as well as x86, a lot more disk image formats and disk types, etc).

The WinImage site references some very old tools back from the days when you had BBS, FidonetARPANET, Simtel, and Compuserve (the latter both hosted on PDP-10 machines, 1970s based technologies still ruled many of the computing world).

But I digress.

Back then, the only disk image supported were floppy disks, and most tools were DOS based. Like the FDFormat tool from Christoph H. Hochstätter which allowed you to add 300 kilobyte of extra space on 3.5 inch 1.44 megabyte floppy disk.

You can still see that in the WinImage binaries: Bootsector from C.H. Hochstatter

The email:

From: Gilles Vollant [mailto:——@winimage.com]
Sent: 07 December 1997 13:02
To: ‘——@xs4all.nl’
Subject: WinImage registration notification

Thank you a lot for registering WinImage 4.00 Professional

Your code of registration is:
J——s
—————

Note there is now french, english, italian, portugese, spanish and german version of WinImage.
I send you a floppy with WinImage 4.00 and my freeware Extract. I hope you’ll be happy with WinImage !

Don ‘t hesitate to upload it on BBS and give to your friend !

Only two question : Where did you find WinImage and do you Windows 3.1, Win
95 or WinNT version, or both ? (you can answer in french or english)

For getting more information, you can connect on my web site at :
http://www.winimage.com/winimage.htm
and at http://www.winimage.com for information and downloading other tools (including related to WinImage)

Regards,

Gilles Vollant

–jeroen

via:

Posted in BBS, FidoNet, History, Power User, VMware, VMware ESXi, Windows, Windows 7, Windows 8, Windows Server 2000, Windows Server 2003, Windows Server 2003 R2, Windows Server 2008, Windows Server 2008 R2, Windows Vista, Windows XP | Leave a Comment »

remanence of the PC computing past: Intel MCS-86 Assembly Language Reference Guide

Posted by jpluimers on 2012/09/24

Remanence of the PC computing past: Intel MCS-86 Assembly Language Reference Guide on bitsavers.org in http://bitsavers.org/pdf/intel/8086.

Intel MCS-86 is/was the 16-bit range of x86 processors.

I used it in BASM (not only in Delphi 1 and up, it started in Turbo Pascal 6), and before that in MASM, NASM, and TASM.

–jeroen

Posted in Assembly Language, BitSavers.org, Delphi, Delphi 1, Development, History, Software Development, x86 | Tagged: , , , , , , , , , , , , , , | 5 Comments »

:-) and :-( turned 30, thanks Scott Fahlman!

Posted by jpluimers on 2012/09/19

Today they :-) and :-( turned 30. Happy birthday!

The first use was attributed to Scott Fahlman.

Over the last few years, I switched to reverse smileys as too much software tries to graphicalize the regular ones.

–jeroen

via: Scott Fahlman – Wikipedia, the free encyclopedia.

Posted in History, Opinions | 1 Comment »

Great session on how to prevent SQL Injection Myths and Fallacies

Posted by jpluimers on 2012/08/15

A few weeks ago, Bill Karwin did a must watch webinar on the prevention SQL Injection titled  “SQL Injection Myths and Fallacies“.

Bill Karwin (twitter, new blog, old blog, Amazon) is famous for much work in the SQL database community, including InterBase/Firebird, mySQL, Oracle and many more.

He also:

Anyway, his webinar is awesome. Be sure to get the slides, watch the replay, and read the questions follow up.

Watching it you’ll get a better understanding of defending against SQL injection.

A few very valuable points he made: Read the rest of this entry »

Posted in .NET, .NET 3.5, .NET 4.5, .NET ORM, ASP.NET, Batch-Files, C#, C# 1.0, C# 2.0, C# 3.0, C# 4.0, C# 5.0, C++, Cloud Development, COBOL, CommandLine, Database Development, Delphi, Delphi for PHP, Delphi x64, Delphi XE2, Development, EF Entity Framework, F#, Firebird, FireMonkey, History, InterBase, iSeries, Java, JavaScript/ECMAScript, Jet OLE DB, LINQ, LLBLGen, MEF, Microsoft Surface, Mobile Development, PHP, PowerShell, Prism, Scripting, SharePoint, SilverLight, Software Development, SQL, SQL Server, SQL Server 2000, SQL Server 2005, SQL Server 2008, SQL Server 2008 R2, SQL Server 2012, SQL Server 7, VB.NET, VBS, Visual Studio 11, Visual Studio 2002, Visual Studio 2003, Visual Studio 2005, Visual Studio 2008, Visual Studio 2010, Visual Studio and tools, Web Development, Windows Azure, WinForms, WPF, XAML, xCode/Mac/iPad/iPhone/iOS/cocoa | 1 Comment »

Hollerith and why we have digraphs in Pascal and trigraphs in C/C++ (nostalgia, Apple ][ plus)

Posted by jpluimers on 2012/07/04

Apple ][ plus keyboardSome nostalgia (:

In the mid 80s, when programming in UCSD Pascal and Turbo Pascal, I learned that Pascal has (. and .) digraphs that translate into [ and ], similar to the (* and *) digraphs that translate to { and }.

In fact I thought the English word was bigraph (as bi- is a prefix for twice, just like tri- is a prefix for thirce).
The digraphs are lexical alternatives (Pascal ISO  standard 7185:1990 paragraph 6.1.9 or Extended Pascal ISO standard 10260:1990 paragraph 6.1.11). There is even one more: the @ at-sign is a lexical alternative for the ^ caret.

Back then (I was in my teens, there was no internet yet and school library had nothing on programming) I thought these were because keyboards like those of the Apple ][ plus couldn’t emit [ and ], but I was wrong: it was in fact the Hollerith Card Code that could not represent these characters.

That limitation was because of the first Pascal implementation was done on a CDC 6000 series that used punched card readers/writers.  You could not punch arbitrary numbers of holes on each row (lace cards lacked structural strength) limiting the character codes you can represent.

They still work in the Delphi compiler for arrays and for comments (I just learned that various Pascal implementations use different rules of mixing digraph and normal comments (some even allow nesting)).

While I taught myself C and C++ just as I taught myself Pascal, somehow I never learned that they use lexical alternatives too. It was only recently that they do, both as trigraphs and as of C99 also as digraphs and that there is even a trigraph tool as part of the C++ personality of RAD Studio 2007.

–jeroen

Posted in Apple, Apple ][, C++, Delphi, Development, History, Keyboards and Keyboard Shortcuts, Power User, Software Development | 1 Comment »

The calculators that got me into programming (via: calculators : Algorithms for the masses – julian m bucknall)

Posted by jpluimers on 2012/01/31

I hadn’t visited Julian M Bucknall’s blog for a while, so I just found out he is a calculator collector, and posted a few calculator posts.

He’s much better at writing and narrating than I am, but lets give it a try to see how his posts reminded me of my high school days, what calculators I used back then and how it got me into computing.

Back since I learned to count, math related subjects always worked better for me than for instance language related ones.

It might have to do with my dad. He was a financial economist, so in his job he was juggling with numbers. At home there were ledgers for bookkeeping, slide rules (I inherited his old slide rule, which I still have somewhere in our basement), and over time various types of calculators. He used calculators in the 70s, programmable calculators and a HP 12C programmable financial calculator in the early 80s and small handheld computers in the mid 80s. I remember teaching him both Lotus 1-2-3 and Microsoft Excel later on (at work they didn’t have Visicalc, as they had an Exidy Sorcerer at work that didn’t do spreadsheets).

I have a slightly younger brother with an IQ of almost 50, so my dad bought him a Little Professor in the early 80s to see if his counting skills improved. It didn’t work; he still cannot calculate beyond 20 most of the times and rarely beyond 100. But it was a nice experiment. And he has skills other people don’t have.

Back then, my father worked for the Dutch Ministry of Economic Affairs in working on the subject of consumer loans (he was a strong proponent of legislation protecting individuals from getting bad loans, and very much in favour of publishing netto costs for consumer credit; in fact he was among the first to notice that Dirk Scheringa was trying to lure people in way too much debt against way too high interest rates).

In his department, they standardized on Texas Instruments financial calculators. He had a Texas Instruments TI-59. It was programmable, and took him forever to program, but he was very handy at it. The TI-59 had off-line storage through magnetic cards (which was quite unique, the HP 65 – which was also programmable – had it first, but was twice as expensive). One of the cool programmability features was that it could record keystrokes like they were macros. That alone could speed up work a lot. Finally you could fit TI-59 ROM modules, including one with extra math functions. Thad one made his life a lot easier.

I found the TI-59 interesting, but my English wasn’t good enough yet to be able to learn programming with it. Back then in The Netherlands, you didn’t learn English at primary school, so the first time I got taught English was at age 12, and the first time I got German and French was at age 14.

Ever since I was a little kid, we would go to Germany on holidays (it’s a long but and nice story, maybe in a later blog), with almost yearly camping near Almensee, Bad Dürkheim. The result was that – unlike my school mates – I spoke German when going to high school, and learned that super markets – like hit.de – in Germany would sell way outside the range of grocery shops did in The Netherlands: magazines, music on LP/EP/Single/Casette, household tools, etc.

One of the things back then was that technical literature was either German or English. And tech stuff was way cheaper and abundant in Germany than in The Netherlands.

So when going to high school, I spoke German, and when entering the second class, I needed an electronic calculator. When I saw what they offered at the school and Dutch shops and the price they asked for calculators, I quickly decided I wanted to buy my own calculator during the next summary holiday in Germany.
Most kids getting their calculator from school either had calculators with VFD displays (which ate batteries like crazy) like the the Casio FX-20 or “simple” scientific LCD calculators like the Texas Instruments TI-30LCD (with an ugly hard plastic enclosure and nasty click type buttons). Both had basic scientific calculations, like Sin, Cos, Tan, Log, Ln (and their inverse), square, square root, one over, y powered by x, one memory and a few other bits. But only 8 displayable digits (which sucks when you loose 2 because of exponential notation). Lots of functionality was lacking of which I didn’t know the details back then, but I saw people in senior years struggling with them like mad working around the limitations.

I wanted something better, which was tough to get, as the best you could buy in The Netherlands were the Casio FX-82 and Casio FX-100, which were at least twice as expensive as the FX-20 and just as cluncky. So only the kids with rich parents had them. On top of the FX-20 they had some compelling features like fractions (only the FX-100), representations (scientific, fixed decimal, engineering, normal), trigonometric functions in degrees and radians, 6 levels of parentheses, statistics functions, polar to rectangular conversion and back, and a bunch more smaller things. They had either 8+2 (FX-82) or 10+2 (FX-100) digits which was neat: finally you could see the precision in which they were operating. In fact they internally operated at 12 digits which you could see by multiplying with 10, then subtracting the integer part.

I recently found out that the successors of these machines (FX-260 at CasioEducation.com) are still being sold, including a manual describing the FX-82Solar, FX-85B, FX-260Solar and FX-280 which basically says there is almost no changed functionality since the FX-82. How’s that for 30 years of progress :)

The next summer holiday, I did a price comparison. Casio calculators in Germany were at least 30 percent cheaper than in The Netherlands, and there were even more choices than the summer before especially in department stores like Karstadt (now Arcandor and in bankruptcy). I was like a kid in a candy store, just the candies were a bit more expensive.

So I used some of the money I earned the summer before (peeling flower bulbs) in Germany during our holiday to buy a Casio FX 550 (on the left), which had 10+2 digits, whereas the Casio FX 350 (on the right) had 8+2. They had almost identical functionality to the FX-82 and FX-100 with one tiny addition: hyperbolic trigonometric functions. Buth they didn’t use AAA batteries, so they were not as clunky. And both had fractions (which the FX-82 hadn’t).

In the mean time, they department where my dad worked had switched from his Texas Instruments TI-59 to a Sharp PC-1210, which was the predecessor of the Sharp PC-1211 and shared the same peripherals (casette interface – which my dad had – and printer – which my dad didn’t have). The  TRS-80 PC1 was in fact a Sharp PC-1211 with a different label. Radio Shack was very popular in the UK and US, whereas Sharp was very popular in the rest of the world. Note that the TRS-80 pocket computer is very different from the TRS-80 Model I micro computer system from 1977.

I was 13 now, and my English was slightly better than non existent, so I could help my dad program his Sharp PC 1210 pocket computer. It was fun, as I learned the BASIC programming language, and how to cram things like a small trinangle calculation program (input 3 properties of a triangle, then calculate the other 3) into 400 bytes of programmable memory.

Since it was my first experience to programming, it was also my first encounter to bugs, both of my own and of the PC-1210 itself. For instance, it could overflow its programmable memory, thereby changing some of the variables (that were somehow overlapping in storage), allowing you to display symbols that could not be entered by keyboard, nor converted by functions.

In the mean time, we were getting more advanced math (with a bit of statistics), and started with economics (both business economics and general economics), chemistry (which I later tried to study at university) and physics. That with my exposure to binary and hexadecimal got me to buy another calculator: a Casio FX-115. Next to decimal, it did binary, octal and hexadecimal including conversions between them and the operators AND, OR, XOR, NOT, XNOR and negation. The big drawback was that it was solar only, and would not work in low light conditions.

At high school we had only a few really good match teachers. One of them taught me that 22/7 and 355/113 are continuous fractions estimating pi, and how to approach problems in a structural approach (analyze, deduce, etc). Another one introduced me into the computer lab (originally meant for the 2 senior years, but they let me in anyway).

There they had Apple ][ Europlus machines: a whopping 10 of them for a school with 1000 students was magnificent in the early 80s. 2 of them had a Z80 They ran Applesoft BASIC and Integer BASIC from ROM so my BASIC knowledge from the Sharp PC-1210 came in handy. Also two of the machines had a Z-80 Softcard in it that not only allowed it to display 80 columns, but also supported 16k of bank switched memory, and a Zilog Z80 processor that ran CP/M. There was a Turbo Pascal 1.0 for it that was way better than the optional Apple Pascal (which was based on UCSD Pascal and much slower than Turbo Pascal). That really got me into programming, on which I will write later (probably much later <g>) and gave me a big Deja Vu when seeing virtual machine based programming environments like the Java VM and .NET CLR that are essentially based on the p-code systems on which UCSD Pascal was based.

After lending the Casio 115M to a school mate, it disappeared (getting the money back through insurance was a difficult thing because you could not get them in The Netherlands, and the hoopla of having them accept a Germany cash receipt in stead of a full written receipt was a pain) led me to my final calculator which I got during the autumn break: a Casio 415M dual power calculator: both solar and a battery. It was almost identical to the Casio 415, I think the only difference was the dual power. As you can see on a more elaborate Casio 415M page, it had extra keys in the cover that added many functions: all kinds of conversions (temperature, volume, weight, pressure, etc), physical constants (gravity, lightspeed, Avogadros number, etc). I only recently disposed of it, as the flat cable between the cover and the machine broke. How’s that for a 25 year old piece of equipment!

Oh while on the Casio topic: high school was also the place where I met a lot of international people that followed International Baccalaureate, and where I read The Hitchhiker’s Guide to the Galaxy just two years after I bought a neat Casio Universal Calendar digital watch. My first and last :)

–jeroen

via: calculators : Algorithms for the masses – julian m bucknall.

calculator research sources:

Posted in About, Development, History, Personal, Software Development | Leave a Comment »

15 years of xs4all internet provider membership

Posted by jpluimers on 2012/01/15

Today it is the 15th anniversary of my xs4all membership.
Even though (see some history below) xs4all was not my first provider, it has been the provider of choice ever since:

  • Technically very knowledgeable
  • Very stable connection
  • Highly much aware of privacy

Back in December 1998, when xs4all was sold sold to the Dutch Telcom (KPN), lots of people were afraid that xs4all would start scoring less points one ore more of the above points.
They didn’t, and that is the main reason I’m still client with them.

This despite the  fact that I can get faster internet where I live.
My ADSL connection is quite a long distance from the telco DSLAM, so I can’t get a very high ADSL speed.
As some of the ADSL versus distance speed graphs show, your ADSL connection needs to be close to the telco’s DSLAM.
I’m not, so my maximum ADSL1 speed is slightly less than 8 megabit, and my current ADSL2+ speed is less than 16 megabit, so xs4all light is the best I can get.

BTW: If you live in The Netherlands, here you can calculate that distance (which is called “afstand tot de centrale” in Dutch).
I wish they ran the telco cables under the canal to the neighboring village: I’m about 500 meter away from their DSLAM, in stead of the 2700 meters I’m from my own DSLAM.
Oh well :-)

For high speed things, I now also have a cable connection.
Even though they are deregulating that part of the broadband market, currently cable internet is bound to your cable TV provider.
In my case, that is UPC, and their high speed internet is marketed as Fiber Power.
I started with a 60 over 6 megabit service, that they increased to 120 over 10 megabit about a year ago while reducing the price (because they were merging their packages and wanted to increase their competetiveness).

While writing this, I’m still searching for a good dual gigabit WAN router to combine the two connections in one.

Over time, xs4all increased the ADSL bandwidth from a meager 1 megabit over 256 kilobit to 8 megabit over 1 megabit.
They increased mailbox and storage sizes too.
And finally, they were among the first to support IPv6.

So all in all, I’m still very happy for staying with xs4all.

A bit of history

xs4all was not where the internet started for me. Read the rest of this entry »

Posted in About, BBS, FidoNet, History, Internet, ISP, Personal, Power User, SpeedTest, xs4all, Ziggo/UPC/A2000 | 18 Comments »

A few more classics on BitSavers in the /pdf/borland tree

Posted by jpluimers on 2011/09/27

Hope you like these classics from the early Borland era:

Oh, and if you – like me – started in the Apple ][ and Lisa era, there are lots of nice documents of Apple products from that period to, for instance:

–jeroen

Via: Index of /pdf/borland.

Posted in BitSavers.org, Delphi, Development, History, Software Development | 5 Comments »

Back to the 80s: Apple Pascal on the Lisa Machine

Posted by jpluimers on 2011/08/15

Talking about Pascal history: Index of /pdf/apple/lisa/pascal_monitor.

That was then, soon it will become easy to write Pascal apps for Apple iOS using Delphi XE2 :)

–jeroen

Posted in BitSavers.org, Delphi, Development, History, Software Development | 2 Comments »