So, we have HP on stage, brother, what a name, what a name brother, okay, so we will talk
about something called popo, right, so the stage is yours, yeah, you're all going to regret
having uploaded already, I'm afraid, but what is this talk about, this is about Microsoft
pop, and implementing an application for this fantastic platform from about 1994.
So who am I, my name is Hapay from Bram, I'm a board member of the Gido Foundation, I have
a consulting company called pre-hanciled sales, and I like old computers, sometimes also
how new computers, but that's more or more rare lately.
So, what is it to talk about, well, first of all, why are we here talking about a project
from Microsoft from 1994 that most of you have never heard about?
It also occurred to me that when I was making this talk, that 1994 is long enough
ago, that there will be people in this audience that wasn't a window-life then, and
have kids now, just for all of you all to think about, first, second, you're welcome.
So, what are we talking about, what we're going to nerd out a little bit about some
old computer stuff, and is there anything we can learn from this project?
Well, how did we get there, why am I talking about this, why are you forced to listen to this
here now?
I was browsing the internet that you do, and I came across this forum post, I don't exactly
know why, or how I came across it, but sometimes universe gives, and this was the thing
to get, hello, I have a friend here who still uses old computer running windows 95.
He said that the only thing uses for this letter using Microsoft Bob letter writer.
This post was from 2010, so this is a person that apparently used their windows 95.
Oh, there we go again.
So apparently, Gene's friend used Windows 95 computer for about 15 years, and used Microsoft
Bob letter writer to write their toes in.
So there's many questions that is raised, so what is Microsoft Bob, what is Microsoft Bob
letter writer?
Well, first of all, what is Microsoft Bob?
We can quickly look on Wikipedia, I find out that Microsoft Bob was a product from Microsoft
from about 1994, 1995.
It doesn't write 1995, this came out in the same year that Windows 95 came out with
also turns out why you might never have heard of this thing.
So, as the previous Wikipedia page says, what it said, it was to replace program manager.
And again, as I was writing this talk, I realized in 1994, it's quite a long time ago,
so some of you might not know, this is program manager, this is what Windows 3,
with some of you might never see an either, I guess, looked like, so if icons and windows, etc.
What was this about showing a house?
Well, this is what Microsoft Bob computer interface looks like.
The idea was that this was, in fact, instead of a desktop, this is what you got,
so you got a friendly room with a nice dog and a corner showing things happening.
And for instance, this is a room that has, this is the public mouse house, and this is the public
study. And this is Microsoft Bob letter writer, the project that the genes friend apparently
spent 15 years writing all their correspondence this in.
So, despite all of this, I'm really not here to make fun of Microsoft Bob,
to a certain extent is because it does it all itself already, right? There's nothing I can say
that is fine here, then just looking at the screenshot of this thing.
So, I'm not going to try, but there is a sort of earnestness to this whole thing that,
that I find absolutely irresistible. Microsoft spent years building this thing, spend countless,
like, man-hours, human lives, or spend building this thing. And then I've sold it in stores
for about six months, then Windows 95 came out, and all of this was for nothing.
So, are there good things about this thing? And I really, I honestly think there are.
So, if you look at this screenshot that we're here, you'll notice that, for instance, this
ping grows is an item that you can click on. If you click on it, you can say change it,
and then you can resize it, and it's all like pixel-verfic, like this is running in the screenshot
is from a doesbox running in 124768, for instance. It's also as a wild amount of integration
for 1994. It can do things that you really would not expect your computer to do in 1994.
For instance, there's an address book. I can add a contact for false them. I can give it a
birthday. And then when I go to my calendar application, it'll know that February 5th is the
birthday of false them. I can go to the mail application and send an email to false them by adding
it to my address book that's a separate application. Of course, right now, this is all stuff we
expect, right? But your computer from 1995 running Windows 3.1, you really wouldn't expect most of
this. You barely would expect the thing to work at all. It's also super-walk, for everyone who's
like concerned about like the modern Vogue staff, Microsoft Bob in 1995 allowed you to not
have a gender. It's also super-secure. Like you guys had best works on stuff.
It's also surprisingly fun. And this is a thing that I genuinely think is kind of missing
from modern computing. Like everything is like no KDE, Windows, it's all, it's all become a tool,
right? There's very little fun. So what you see here is me logging in with a false them user who
has a birthday on January 31st as in today. You noticed that you log in and the dog will tell you,
hey, this is for you, open it. This is just something that computer just does. If you open it,
what happens? And this is just, this is just, this is just your desktop now, by the way, these are items.
You can move it around. You can move the box around. You can click on the balloons and pop them.
It's really cool. And this is, your computer doesn't do this anymore, right? You can
be really trying to delight you anymore. Your computer now just tries to not be visible for the
most part. And that's also some bad things. Once you have your giant vase, then well, that's just
the size of the vase now. And if you don't like it, I just have to move it, make a smaller again.
You want to make it exactly as big as it was? Hope you remember. Also, this is all shared, right?
You can have multiple users using the same room. So if somebody decides to put like a giant flower
in the middle, now that flowers just there for everyone in the house. Also, what the fuck is this?
Like, what is the bottom line looking at? What is this supposed to be? And let's see,
I'm going to try to do something slightly brave. This is, this is the actual software running.
So this is a male client, but what is this trying to convey? Like, the house is relatively
straightforward, right? We know what a house looks like, roughly. I hope this is going to go through.
Sorry? That was, oh, it's receiving. Yeah, there we go. So what is, what is this thing?
In the sense of, like, the Microsoft Bob clearly tries to make your computer look like things. But
and this is like an letter, which we can open. What is this thing that my
male is showing up on? Well, this is one of these, you know, this thing that everyone has in their
house. Now, it's very easy, very easy to use, very intuitive. One more, what does shit is this?
Like, it's actually not a bad graphic, but once the last time you've actually held one of these,
I believe, that's probably people in Israel who literally never seen one before. You're welcome.
Also, well, it doesn't exactly have blue screens, application errors, general protection,
fault, and you spread that VBX is going to be part of your daily life if you use Bob a lot.
Might be because of those bugs, but you might not be surprised to hear that I have a laptop running
exclusively Microsoft Bob, and it also doesn't. But that comes help, but love this thing. It is
quirky and weird, and they try to make computers accessible to people and failed
spectacularly, but earnestly. So, what was offered to them for this thing, actually, like, well,
nobody really knows exactly because of the four months that this was on the stores. There was
not any third party app developed, but nor did Microsoft have actually released an SDK. However,
I was able with G-Hydra to figure out that there's some flag you can set in wind.ini. Yes,
that is really the only way to do it. And with unlocks the virtual, official basic controls,
which then allows you to open these controls of Visual Basic, and this is basically what the
interface, in Visual Basic, loops like when you're building a Microsoft Bob application.
It's interesting because almost everything in Microsoft Bob is written in Visual Basic 3,
that includes the whole word processor and email clients, all entirely Visual Basic, but not the
checkbook application in the calendar. I don't know why. What makes the Microsoft Bob application
Microsoft Bob application? Well, first of all, there's a podium in the bottom right. This is actually
an integral part of the app experience because there is no title bar or anything. The podium
actually takes the place of what on other systems is the title bar. So, it has the only menu that
exists in a Bob application, which is the exit button. Then you have the guide, which is managed
by the podium, and has to stay on the podium. It's very sad. And that is really all. So, you see
that in the corner there, you see the room, like the behind it, that is all spoken mirrors,
that literally takes a screenshot right before starting up and just puts it on the background.
So, but in the background, Microsoft Bob actually uses state-of-the-art features of 1994,
which is it internally, everything you see is an MSGET databases. All of the surfaces are exposed
via calm object. All of the shared components, the podium, the guide, or VBX components,
with at the time, were supposed to be the modern way of componentizing an application.
The mail stores are in PST, with some of you might remember being. So, these are actually the same
mail format that Microsoft Outlook still uses today to stay our emails. And the mail client interfaces
mapping, which means that the DLL that interfaces the Microsoft Bob mail client to the mail backend,
is the same interface that Microsoft Outlook uses today to talk to Office 365.
So, they really did try to make something good. Again, they failed, but they really did try.
And of course, this thing has to run in 16-bit Windows Land, because VBX didn't make
until the Windows 95, almost none of the core technologies did. There's still some questionable choices,
like while it looks like each app runs in the room. As I pointed that earlier,
it's really is all smoke and mirrors. The podium manages the guide for some reason. There are two
separate objects, but if you put the guide somewhere else on the screen, it just stops working.
No, I still don't know why, and I spent a embarrassing amount of time trying to figure out why.
And I think this is not necessarily really a Microsoft Bob specific problem, but there's a lot of
boilerplate code, both in visual basic as well as in C++ that you just have to have in your application.
But at the time, people just love to do that. I don't know how many of you ever had the mill
portion of trying to write a 16-bit NFC application that you start by wizard, where you answer
both questions, which will then generate literally hundreds of lines of codes for you that you can't
really touch. And you can, but you get to keep all the pieces. So how does software development work
if most of it is in visual basic? Well, C++ is possible, the only way to write VBX stuff isn't
as C++. So there is, there's APIs for that, but because they use VBX controls, we
introduce visual basic controls, that means that every C++ app has to be using MFC.
MFC stands for Microsoft Foundation classes, right away, for the young whippersnapping
in the audience, and everything has come. So what does that look like? Well,
instantiating the podium in C++ looks like this, and the only thing that this does is get to the
little thing in the corner. Then in order to start an application, this is more or less the minimum
amount of code you need to do anything at all, and this won't actually run like this.
You also notice the work you told P.A. everywhere, that was the actual internal name for Microsoft
but it's, it's calls itself Utopia. So how did I figure this out? Well originally, like I said,
there was like two native applications, checkbook.exe, which I ran through Geohydrafero very long time,
trying to figure out all of these calls into Utopia, the DLL. But then after months of working,
somebody just randomly dumped like the copy of part of the real SDK online. There's still a lot
of missing pieces from that, but together with that, with all of the stuff that I had worked out beforehand,
I was actually able to make something work. So let's see if the demo gods will be kind to me today.
I have multiple dots boxes running my apologies. I mean, who doesn't?
All right, so this is the application starting that you saw before,
ball parallel worlds made by me.
Fantastic. Oh, that is the real experience that you got there.
And it's a quick, so just to show you that this is also not this is the actual
notebook application of the visual basic one that I run through, visual basic decompiler,
and spent more time than I would like to admit, fixing up. But you'll see that this visual
basic code shoots theoretically. There you go. Actually, run, like,
all right, moving very swiftly along. So how did it, how did Gene's plight and,
well, Gene managed to rescue the documents off her friend, but it was puzzled by the fact that
ball would only have these number files, and she didn't understand why, and I didn't understand why,
either. So that's, that is not a dot's file name, but you don't get to pick a dot's file name.
Whenever you make a new document in Microsoft Bob, and when you open documents, you don't get to see
a list of files, you get to see a list of the documents you made, and it will also notice this little
thing on the bottom there, share it with others, or keep it private. That's not a thing that
Windows 3 can do. Windows 95 can barely do this. Well, the trick is that indeed on your file system,
in the folder where the right application itself lives, that letter is in fact just called 77.utp.
So Bob stores the real file, the Bob file names in a database. One of these MSGET databases that
everything is stored on, and the user never actually sees any real files. In the rare cases where
Bob will let you pick a file outside of itself, it actually calls it a DOS file.
So, and Gene was not able to figure this out. Would you, but can you figure it out today
where the method out of your friends and family is now? I don't actually think that Bob did this
on purpose. I think they were like, this is kind of my thesis about this whole thing. They actually
I think we're trying to do something good for a change. I mean, this is the Microsoft of 1995,
right? Not just today. They probably still write then. And it's still managed to be extremely
captive because of this weird database thing. And this is something I can't reliably demo obviously,
but these MSGET database also had a tendency to just blow up. Like, if you turn your computer
off at the wrong time, they would just completely corrupt, which is fun. But modern software as a
service actually does this on purpose, right? There's plenty of services where you can export your
data, but only a version of it that is only short of what you actually put in. And I realized
I'm preaching to the choir a little bit, but I think that stuff like this still happens today,
and people pick Bob because it was supposed to be user-friendly. I mean, for the four months that
it was available on people got to pick it. And I didn't realize that this is what they were doing,
and I think we're still doing this today, and I think we're still letting our friends and families
do this today. So I want to thank you, and I want to open the room for some questions,
I think there's only a couple of minutes. If you want to play with Bob, I put a version online.
It works in your web browser. I hacked the docs box a little bit so you can press the print button,
and you can get all of your beautiful documents and post scripts writing your browser.
I have a Patreon, there's currently no paid stairs, but you can sign out for free.
If you want to hire me to do weird tech shit, that's my business, and tomorrow I'm going to talk about
the milk line, you saw working, and follow me on messed it up.
Yeah, apparently we have time for one question.
Yes? Why? Well, it is a good question.
I would answer it, but I didn't really, I guess. The real answer is because I have severe ADHD,
and I picked, and I saw that post by Gene, and exactly the wrong time,
that is the real kind of this is the real answer, I guess.
Thank you very much. You can, if you have more questions.