Once I got The Everything Machine published on KDP this past March, I went back to a project I’ve tinkered with for almost 15 years: FreePascal from Square One, a 354-page PDF providing an introduction to programming, using the FreePascal FOSS compiler and the Lazarus IDE for editing and building. I need to mention here that the book does not go into Windows programming, OOP, software components, or the Lazarus GUI builder. I have a concept for a second book for those topics, and have written some of it, and borrowed a little from my portions of The Delphi 2 Explorer. No schedule yet, but I work on it when time permits.
FreePascal from Square One really is a free ebook. It’s a distillation of the four editions of my Pascal tutorial, Complete Turbo Pascal, which first appeared in 1985 and culminated in Borland Pascal 7 From Square One in 1993. I sold a lot of those books and made plenty of money, so I’m now giving it away, in hopes of drawing more people into the Pascal universe.
The book begins at the beginning of the beginning, and explains the ideas behind programming, drawing on metaphors from daily life, before jumping into coding. I’ve turned loose increasingly polished revisions on a regular basis since 2011 or so. This one has things none of the earlier revisions had: A new chapter on simple Pascal file I/O, and a clickable table of contents.
The TOC thing made me nuts for awhile. I tried to make it work using InDesign, but InDesign (my 2005-era copy, at least) can’t do it. I know it can be done—I have a couple of technical ebook PDFs with clickable TOCs—but needed to buy a high-end PDF editing tool to make it work. The product is PDF X-Change Pro from Tracker Software. It’s not free, but if you do any amount of work with PDFs, it’s essential. The Pro-level product comes with a 1,372-page manual—in PDF format, of course. It took me most of a day plowing through that monster manual to find out how to make clickable links in PDFs, but once I located that part, adding links to the TOC took me less than an hour.
It’s not tied to TOCs. You can define a clickable rectangle anywhere in a PDF, and specify what page that clickable rectangle will send you to. I drew rectangles all around the lines in the TOC, then right-clicked each rectangle and specified a destination page number for each line.
If you want the book, it’s right here. You’re welcome to share it around, post it on your site, or give it to anyone who might be find it useful. If you’re interested in FreePascal and Lazarus, here’s where to go to download them. They’re as close as you’ll get to Delphi in the free software universe, and it’s about the only programming environment that I use these days, unless I duck back into x64 assembly. Give it a try. It’s bogglingly good.
I posted a link to this on the LinkedIn Group “Delphi and Pascal Developers Group” and pinned it so it stays visible for awhile. The group has around 10,000 subscribers so there should be pretty good coverage. I’d be curious to know if this generates a good response to your generous offering.
Many thanks, for the community and for myself.
MV
Thanks! That’s exactly what I’d hoped people would do, to get it in front of as many people as possible. I haven’t yet contacted the FreePascal/Lazarus group themselves, but it’s on my plan for today. I don’t have any way to know how many times it’s been downloaded (or at least I don’t think I do–will research that later) but it’s enough just to know that it’s up there and people can get it.
10,000 subscribers! I’m on LinkedIn but I don’t go up there much. I will look into the Pascal group there as well.
Jeff, my first “real” programming language was Algol 60 in the late 1960’s while in college. That was all punch cards and batch programs and there were more than a few Saturday nights my date and I made a stop by the computer center so I could get an extra output turn around. Decades latter, when Turbo Pascal came out and I had gotten an AT&T 6300 simi-clone, I bought it ASAP. It was so much like Algol 60 from my past that I often had some heated discussions with people that I had been writing Pascal before Pascal was a thing. Now 78 years old and half a dozen or more programming languages latter I think it is time to revisit my past. Will be getting your book and downloading FreePascal! THANKS & 73
[…] 详情参考 […]
Jeff, someone left a link to here in the /r/Pascal sub at Reddit. I have the somewhat older download of your book I been using with Lazarus on Ubuntu Linux to learn Pascal. It’s something I never really had the chance to learn before, but rather Modula2 with the Logitech compiler set. One of my most precious possessions is your Assembly Language Step-by-Step that along with LaFore’s and Leventhal’s books on x86 assembly taught me everything I ever wanted and needed to know. Thank you for writing it!
Anyway, hopefully you’ll see some traffic from Reddit!
Jeff, thank you this excellent programming resource. Pascal is still my favorite programming language. I’m grateful to the FreePascal team and you for keeping the language current and enjoyable.
[…] which might help newcomers to the language here is a new e-book: FreePascal From Square One by Jeff Duntermann. The author […]
From Spain (EU), Thanks!
Shared in Telegram’s groups of Delphi/Lazarus.
For digital version, give a chance to Sigil software. With CSS/HTML code you can do a good technical book (I did a lot as editor I was).
Best,
Jeff, your book gets mentioned in an overview article on the new Lazarus release at the UK tech blog The Register: https://www.theregister.com/2025/05/09/new_lazarus_4/ with a link to this page.
The Register article is reported on SoylentNews:
https://soylentnews.org/article.pl?sid=25/05/14/1143244
A Thank You for the gesture, from Italy (EU)