oh ...wonderful world of MacPaint
MacPaint has always been one of my favourite little applications and I still play with it when I run either my MacPlus or vMac emulator.
It really is an important step in the history of software.
Apple has donated the source code of the groundbreaking graphics app, MacPaint, to Silicon Valley's Computer History Museum, located in Mountain View, California. Accompanying MacPaint is the source code for its underlying graphics-display library, QuickDraw. You can download both from the Computer History Museum here — and …
".... In those far-away days, "write tight" wasn't a mere catchphrase — it was a necessity ..."
It's a pity that leter developers never have to practice writing to minimal memory models... perhaps some of the code bloat that modern PC and Mac memory capacities allow might be tempered by better coding practices.
I was thinking the other day that coding for mobile phones these days requires a bit more thought than for full-size computers, and how healthy that is.
My old Computer Science teacher (using Pascal, co-incidentally) used to put good coding practices at the heart of everything we learnt, and I confess that my skills had grown rusty through years of being lazy and getting away with it.
"Writing 'tight' code almost inevitably sacrifices code clarity."
Nah. "non-tight" code is inevitably more complex than the converse. Verbosity is more complex than brevity in any language; spoken, written or compiled. Witness the multi-megabyte abortions needed in some implementations to get something as simple as a line of text onto the screen.
Some of the simpler projects I have inherited over the years could seriously have been completed in a few K of assembler, but instead were unending buckets of duplicated functionality, obscure class names and hierarchies and reams - of basically - shit; and to top it all verbose code in any decent-sized project usually has some of the same obscure bugs that dog "tight code" - one just has 100x more code to look through to find them.
The problem with comments is that nothing enforces their accuracy so they can (and often do) end up out of date - even assuming they were accurate when they were written.
I prefer to write self documenting code and that usually means breaking it down into lots of functions/methods, employing encapsulation and not trying to do too much at once. That doesn't mean that I write bloated code - it just means I avoid 'tricks' and 'cute' code and don't optimise where it isn't needed.
Of course there are still some areas where tight code is needed (smart phones are one) but we're talking here about a desktop application. There's no need to employ 'tight' coding techniques for that these days. I'm not advocating bloat because I dislike that as well but there is an extensive middle ground between the two.
20 year old C code! Pah - Try 40 year old C code...as in the sterling examples in John Lyons source code tour of UNIX. Actually it's not nearly as painful as you might think. Probably because there was no room for cleverness in 4K and a single-threaded processor....
Blame the surrounding culture.
Pascal was designed for teaching and thus all the pascal material is focused on education, readability and other noble attributes.
C is proud of its hairy-chested association with people who like to write y = **x++;
It is however possible to write easy to read code in C, and I've seen plenty shite Pascal too.
When MS ported Word to the Mac (83? 84?) people were able to see what WYSIWYG word processing could be like and Word took off.
Arguably, Word is what made MS the power it is today - after all, businesses buy computers for the applications, not primarily for the hardware architecture or operating system.
I'd say that the source for early versions of Word deserves a place in the history of computing. no matter what your prejudices are.
You were spoiled.
When I used WordPerfect the colour of the text depended on what colour the bloody monitor was. Orange to me meant: "I am using the Toshiba portable* with the gas-plasma screen".
*If you were a weightlifter. I attribute my lack of fitness these days to advances in technology.
Oh God, I remember this Amstrad (IIRC) thing with a flip-up non-backlit LCD monitor (low-res and monochrome). A whole 640K of memory, plus twin floppy drives, and the slowest modem ever put on the face of this planet. That thing was my portal to the world of BBSing for ages. Just never on the road as it totally sucked for computing on the go. Taking like a dozen C cells, it would run for about 75 minutes. Given it was, V30 processor inside, it is so different to the Psion 3a that would arrive four years later, featuring a V30H and more memory plus larger, faster, SSDs and running for 20-40 hours on two AAs.
Ah, found some info on it: http://www.old-computers.com/museum/computer.asp?c=195 and Psion 3 range at http://www.old-computers.com/museum/computer.asp?st=1&c=1207
I have fond memories of the thing, even though it was pretty crap. A DOS boot disc in A: and TurboC in B: and I was good to go! :-)
... was doing 16bit per channel and layers before DP managed to get past indexed colour. But my understanding of the history of technology is that neither "this pioneering tool was worse than tools that came later" nor "they shouldn't be given credit for invention because everyone else quickly stole their ideas" are especially useful things to say.
I was just about to mention DPaint. I loved messing about with that as well. Between that Brilliance, ImageFX and ADPro (PhotoPaint was never as good as Photoshop by the end) Image manipulation was so much fun.
Sorry to divert away from MacPaint but I'd never used a mac until about 2001.
The CPC never ran GEM. However the 6128 did come bundled with CPM Plus.
You might be thinking of the OCP Art Studio which was a full GUI based art package for the CPC, Sinclair Spectrum and Commodore 64.
http://genesis8.free.fr/amstrad/game-rom/amstrad-game.php?prog_id=5818
Was very advanced for its time and included a windowed GUI, mouse support, and a range of cut and paste options. Some clever buggers have even hacked it to support the full 4096 colours available on the CPC Plus machines.
This post has been deleted by its author
Although I remember it launching (the Mac, that is) I was too young to realise that the Paint app was revolutionary. I was only 9 so I just assumed all computers came with packages like that. However, the screen-shot reminds me of all the bizarre fill-textures and, in particular, reminds me of Risk for the Mac (the board game). Each player was assigned one of those "textures" (black and white, of course). Most of them were damn near identical so it was often hard to tell one from t'other but my friends and I would while away many a wet afternoon screaming in frustration at the apparent random nature of the Risk battles.
Memories....
Per some quick Googling, it wasn't reviewed by Acorn User until April 1985 (when they explicitly referred to it as being Macintosh-like) and other sites like computinghistory.org.uk list it as a 1985 release. Is it possible they got the hardware done having seen or read about the 1983 Lisa or any of the other mice that predated, then had a quick rejig of the software post-Mac?
Less than 32k, I think you'll find, because the Beeb used main RAM for graphics (Mode 4, from memory, which used 10k), and there was about 4k of RAM used by the OS. So that left about 18k for the program. Oh, plus the 16k ROM that you had to plug in...
So that's, er, 34k then.
Mine's the one with the BBC Advanced Programming Manual...
V.
The father of one of my neighbors, and best friend of my youth, Dennis, worked as a sales manager for Xerox and always seemed to stay on top of the highest technology. I remember when one fine day Dennis' father came home with the most spectacular and beautiful thing I'd ever seen until then: A Macintosh computer.
Our only experience with computers so far was our very own Commodore 64's, and our various friends' assortment of Apple II's, TRS-80's, and even Dennis' dad's previous IBM Personal Computer.
I remember how I spent hours on that Macintosh, most of the time just staring at it. I did school reports, comic strips, and even an attempt at a nifty looking newsletter.
Of all the things I may have done, I specifically remember MacPaint; how easy, beautiful and fun it was. In retrospect, Dennis' parents must have been very tolerant, for I distinctly remember spending hours without end, even staying late most nights, just playing with that little machine; while Dennis himself was just watching TV, playing with his other toys, or maybe even out of the house!
The one thing that has remained in my mind thereafter, and is as clear today as it was then, was the unyielding and overwhelming feeling that THIS--that seemingly simple and unassuming appliance, with its graphical user interface, strange rodent controller, and beautiful form and function--was, indeed, THE FUTURE.
Gosh, what fond memories. Thanks, El Reg, for bringing them back.
-dZ.
This post has been deleted by its author