"Big institutions don't want to buy code that one guy wrote in his spare room; if there's no team behind it, they get very, very nervous."
— Steve Strand
I was inspired to start the Winners of Wealthtech series by one of my mentors, Tim Ferriss, who is a best-selling author, incredibly successful investor, entrepreneur, and podcaster. Actually, Tim doesn’t know that he’s one of my mentors, since we’ve never met. But his work and his writing have been a big influence on me, so I’m going to keep saying it until he tells me to stop. (By the way, I highly recommend Tim’s latest book, Tribe of Mentors, which you can buy online or even in a brick and mortar bookstore.)
The feedback on this series has been overwhelming! If you have a suggestion for someone you think I should interview, please send it to me at firstname.lastname@example.org.
Now hit the Play button!
This episode of Wealth Management Today is brought to you by Ezra Group Consulting. If your firm is evaluating new technology or looking to improve your current wealth platform, you need to contact Ezra Group. Don’t spend another day using technology that doesn’t offer an elegant user experience. Your advisors and clients deserve better and you can deliver it to them with the help of Ezra Group.
Topics Covered in this Episode
- How Steve went from an electrical engineering degree at Berkeley to starting a portfolio management software company [00:50]
- Advent's first software release [16:19]
- How they decided what features to add to their initial software release and how to expand it [23:59]
- Why Steve is a terrible interviewer [28:40]
- Discussing the difference between hardware interrupts and software polling [32:18]
- The resurrection of Steve's original code by Advent to create Geneva [49:21]
- What made Geneva unique [50:40]
- Why Steve returned to Advent after a decade away [52:18]
- Strand Theory and building Summa [54:52]
- How selling Summa worked out for Steve [57:09], and what he is doing now [58:30]
Companies & People Mentioned:
Here are a few of my interviews with previous Winners of Wealthtech:
- Brian McLaughlin, CEO of Redtail Technologies
- Angela Pecoraro, CEO of Advicent
- Eric Clarke, CEO of Orion Advisor Services
- Cheryl Nash, president of Fiserv Investment Services
- Bill Crager, president of Envestnet
- Lori Hardwick, former president of Advisor Innovation Labs
- Aaron Klein, CEO of Riskalyze
- David Lyon, CEO or Oranj
- Sunayna Tuteja, Head of Emerging Technologies at TD Ameritrade
Complete Episode Transcript:
Craig: I'd like to welcome to the Winners of Wealthtech podcast Steve Strand, the co-founder of Advent Software. Steve, welcome.
Steve: I'm glad to be here.
Craig: I'm really excited for this interview. I'm so happy you were available to talk, and I'm glad that our mutual friend Ryan Kerry, the CEO of Accusource, was able to connect us. One of the things I am interested in talking to you about Steve, being the co-founder Advent Software and Advent Software being one of the first portfolio management tools and having such a great history and being such a big part of the industry, I was wondering how it got started? Going back in time, how did you meet Stephanie DiMarco, your other co-founder, and how did you go from an electrical engineering degree at Berkeley into starting a portfolio management software company?
Steve: Well, I was a student at Berkeley. Before I graduated, I needed a part-time job. In those days the world wide web wasn't invented yet, this would be in the late seventies. So I went to the Student Job Placement Center at Berkeley, where people would phone in their jobs and they would type it up on 3×5 cards and put it on the bulletin board. I knew how to program because I had a personal interest in it, but I didn't have any paid experience as a programmer. But I looked at the programming jobs at the student job placement center and there was one for Summit Optical. So I went there because they were the highest pay per hour, but it turns out it was a typo, it was actually Summit Options. I didn't know anything about options or finance, and they were at first not going to hire me because I didn't have paid programming experience, and they wanted somebody paid.
Steve: But they showed me the Black-Scholes valuation formula, and I was actually a physics major for four years (I switched to electrical engineering at the very end because I decided I didn't want to get a Ph.D. and I didn't want to be in school forever, I wanted to go out in the world and do real things) so I knew the electrical engineering equation well, and I recognized the Black-Scholes equation as being quite a lot like the engineering equation. So they were impressed that I knew the math, and they sort of huddled and said, instead of hiring someone who knows how to program and teaching them the math, maybe it's reasonable to do it the other way around – hire somebody who knows the math and then they can learn how to program. So they hired me and as it turns out, I knew how to program too. My job for them was they had a seat on the options exchange, and I would have my computer suck in option quotes and find under and over-valued options, and try to put together a Delta neutral portfolio.
Craig: What was the computer system? I have a computer science degree as well, so I'm going to geek out here a little bit. What computer were you writing this code on?
Steve: It was a PDP 11, I believe. We were running this operating system called TSX, which I think is proprietary to Deck. It's so long ago I forget a lot of the details, but it was definitely digital equipment. And then I think TSX was a multi-user version called RSX. I've dealt with so many operating systems that I start to forget every detail of those from 40 years ago.
Craig: And that story where you apply to Summit Optical and it was actually Summit Options is too funny.
Steve: Yeah, it's very weird. So my introduction to finance was absolutely accidental.
Craig: But imagine if that was actually an optical company that you had gone to, you may have been in a whole different industry.
Steve: Yes, that's right.
Craig: So we have a typo to thank for Advent Software.
Steve: Yes. Now a very key thing was that Stephanie DiMarco also worked there. She was the accountant, controller type of person, so I got to know Stephanie at Summit Options. Now it turns out that Summit Options went spectacularly broke; as an options market maker, they have to meet zone requirements. The market makers are there supposedly to serve the public, not themselves, so they have to trade options in different categories to show that they're not just concentrating on what they care about. And to meet zone requirements, they would sell garbage options – options way out of the money with one or two days to go. They figured there wouldn't be a chance in heck that those options were going to be in the money. They bought Kennecott-Copper options, and it was taken over by Exxon the next day. Suddenly, they lost millions of dollars and went bankrupt. And I stress that my program, which was largely constructing their portfolio, did not recommend those options.
Craig: Yes, let's be clear that your program did not recommend those options.
Steve: So then the competitors swept in to pick up the key personnel, and some people wanted to hire me. I became a contract programmer, and after a while I wrote this commodities trading program for somebody that had a lot of risk-assessment stuff in it. I'm a student programmer, so I'm getting paid $10 or $12 an hour, something minimal. I worked on the program for months, so I got paid a couple thousand bucks for writing this program. And then it comes to my attention that they're selling copies of it for $50,000 apiece, and that created a burning desire in me that I've got to own what I create. I mean, it's perfectly legitimate for them to be selling it because, I was a contract programmer, that was the contract. I wanted to own what I created, but it was hard to make the transition because I didn't have enough capital to not get paid for a year while I wrote something.
Meanwhile, Stephanie DiMarco had gone to a new firm in Marin County, across the bay from Berkeley. We both wanted to start a business, and a big break came when Stephanie's then-boyfriend found an angel investor, Bob Leppo. This was 1983 and the IBM PC had just come out. Stephanie and I had discussed a lot how people were doing portfolio accounting with timeshare services and you had to pay for every report for every client. If anything was wrong they would deliver printouts to you on Banfield paper, and if there was a mistake you had to call them up. So Stephanie and I had talked about how PCs would probably be much better for people than using a timeshare, and I knew all about the IBM PC because I'd built a homebrew computer; I'd joined a homebrew computer club. I met Steven Wosniak at the homebrew computer club when he was nobody, before Apple had even happened.
Craig: What was that like?
Steve: Oh, that was pretty interesting. I also met Steven Wozniak due to phone freaking. It turned out that the Berkeley EE department was a nest of phone freaking. You could build these things called a blue box, where you could take over the phone system. There was huge security problem in the early phone system, and Steven Wosniak was building and selling blue boxes. I often hear people talk about how they financed Apple by selling a van or a PI calculator or something, but that's wrong – they financed Apple by selling blue boxes.
Craig: Yeah, Steve Jobs and Wozniak were doing blue boxes.
Steve: I went to some demonstrations of blue boxing as a wide-eyed freshman, but I understood PCs pretty well and was sure I could write a program for PCs that would satisfy the typical, smaller money managers. So when Stephanie found the angel investor, Bob Leppo, we quit our jobs and I worked for nine months writing the first version of what was then called the Professional Portfolio. We didn't have enough money to advertise, but we got listed in some directories and some PC magazines (where you can get listed for free). There was this lady in Texas named Sarah Hall who absolutely hated her timeshare service, I think it was Shaw Data. She saw our ad, and I think we charged $2,000 or something in those days, it wasn't a whole lot, but she paid like $2,000 a month to Shaw Data and she hated them so much.
She later told us that she figured there was only about a 10% chance our software would work, but she was willing to gamble on various things that could bump off Shaw data, so she bought our software; she was the first one. She never got to see a demo or anything, she just saw the directory listing and said here's a check, send me the software. I remember staying up all night a couple nights to get a manual together, because we didn't have proper documentation. I was writing document pages and printing them on our dot matrix printer, punching it, putting it in a three-ring binder, and we sent it off.
Craig: Where was your first client?
Steve: Texas, I think it was Houston, Texas. We never met, we never gave a demo, somebody just sent a check saying, send us your software.
Craig: That was a PC-based version?
Craig: So it was an IBM PC? That's the original 4.77 megahertz. Did you put it on floppies? How big is this?
Steve: That's right. Our demo had to run on a single floppy, because most people didn't have hard disks. We told people, if you're going to actually use it, you have to buy a hard disk. That would be a 10 megabyte hard disk, that was the biggest you could get. And the program had to run in 640K of memory, because that's all the memory you could put in the first IBM PCs. So yeah, a very tight computing environment compared to what we have today.
Craig: So you mailed her a single floppy disk with a manual?
Steve: Mailed her a floppy disk and a manual, and to her surprise it worked!
Craig: How much QA did you do on that, how much testing did you do on that software?
Steve: I test constantly as I'm coding; every half-page of code, I'll just run. I'm sure people that are in the testing business would be appalled that I didn't use a testing framework, I didn't do it how you should do it, and I couldn't tell you what my percentage of code coverage was, but I'm pretty careful. I'm kind-of mathematical in my background, and I constantly tried to prove my code is correct. I'm always thinking about a variance, identifying the variance, and then proving the variance is true. You can't actually prove code is correct in the mathematical sense, but you can go further than most people do, and I always find it is beneficial to go as far as you can to try and improve your code to correct. The program apparently didn't have any errors or she never found any, but she bragged to all of her friends about how she was able to fire her hated timeshare company, so her friends started sending us checks; it was exponential.
We started having massive growth real early on by word of mouth. We put a map up on the wall, and we'd stick a pin in it when we got a customer. At first we had a cluster of pins in Houston, Texas. Then one of those people bragged to somebody who lived in Chicago, so we'd get a single pin in Chicago. Then within a few weeks we'd have a whole cluster of pins in Chicago, because whoever got the software would brag to their friends about it and they all started buying it. It's like the spread of an infectious disease or something.
Craig: So the first Sarah Hall in Houston, what kind of firm did she run?
Steve: She was a money manager. I don't know how big her business was, I get the feeling there were like 10 people or something that catered to wealthy families.
Craig: So what was the first version called?
Steve: The Professional Portfolio. The deal was that I would name the company, and Stephanie would name the product. She wanted it to be the Professional Portfolio. Even before we got together, she had it in her mind to have something called the Professional Portfolio. I didn't want to name our company something like Superior Software or Wonderful Software, that was just too obvious. But I wanted a word that had pleasant associations. So I found this whole cluster of pleasant words: advanced, advantageous, adventurous, all these "adv" words that had pleasant connotations; and there were no bad "adv" words. So I decided to call it Advent Software, based on the pleasant associations. I did not understand that this was a season in the liturgical calendar.
Steve: Later on when I found that out I was thinking, oh my gosh, this could be a mistake; maybe I will offend devout religious people. But it turned out it was wonderful, because people who aren't super religious don't know or care, and people who were super religious would go wink wink you're one of us, we're going to buy your software. So all around it was a good name choice for the company.
Craig: Your marketing instincts were correct.
Steve: Yes, although it could just be blundering luck rather than good instincts.
Craig: Sometimes they're the same.
Craig: So you'd gotten your first sales. Did you raise the price, or was it always $2,000 each?
Steve: We started raising the price and then we started having a maintenance contract, to get recurring revenue. Then we had some years of crazy growth, and the problem was always finding people and hiring people. We had good cash flow so we weren't capital constrained, but it's hard to find and train good people. So we kept moving to a bigger office and then another bigger office, and our headcount kept going up.
Craig: One thing I forgot to ask, what was the language you programmed in originally?
Steve: C Language.
Craig: So 1983 was when Advent was founded, and was it 1984 when you shipped the first version?
Steve: December. I believe it was March of 1983 when Stephanie and I both quit our jobs, then I went into seclusion for nine months in the spare bedroom of my house and cooked up that first version. Then we shipped it in December 1983, so it was about a nine-month period to write the first version. Now this version was very minimal by today's standards; there was no graphical user interface, it was a DOS-based system, so no user interface like on a normal program, and the code was very small. it was probably, 60,000 lines or something, and holy cow it was running in 640K of memory. It couldn't be a big, giant program, but it did what people needed.
Craig: Well you know what Bill Gates said, he said he didn't see why anyone would need more than 640K of memory.
Steve: That's right. I bet he's pretty embarrassed by that now.
Craig: Not anymore, but he probably was.
Craig: So what year did you start running into problems, or what was the next milestone year?
Steve: Well, the next few years were incredibly fun. The whole Advent team was good people and we were all excited by what we were doing, I mean I made great, lifelong friendships there. We had this virtuous cycle going, because the product was pretty solid, it didn't have bugs. And it was like a toolset, it was quite flexible. The customer support people had a lot of power, and if somebody had a problem they could generally set things up to help them – that makes the customer support people stay a long time. Some customer support people are just cannon fodder, they're being put out there to listen to people abuse them and complain, and they can't do anything about it. So you get a lot of turnover in customer support. But our customer support people would stay and they'd get good at it and they liked their jobs, because they got to help people and people were thankful. So that started this virtuous cycle where people started to like Advent better, because Advent's customer support had good, smart people who were trained and could help you. I got a reputation for never making a mistake. Now that's a bad reputation to have, because obviously you're going to in the end. I remember a couple of years down I misspelled a word on the help page, and then everybody at Advent was going oh my god Steve made a mistake, Steve made a mistake.
Craig: In those late eighties, did you see other competitors in the market? Did you have the market to yourself? Did other firms see you? Did Shaw Data say, "Hey, what's going on with those Advent guys? We're losing business."
Steve: In the beginning our competitors were all timeshares, because the IBM PC was brand new so there were very few PC-based products. So we were going against the timeshare people, and it was very easy to compete against them because they charged way more than us and didn't offer you a superior experience. It was just good luck that I happened to understand portfolio accounting and I understood PCs, both at the same time when a historical change is occurring where the bright way to do it was PC. So I could just jump right into the breach real early. Then PC competitors did start showing up, but none of them threatened us; we were generally better than them, so, we ran unopposed.
Steve: I listened to the customers. That was absolutely crucial to my success, that I personally took a support calls. In fact, I was the top of the support pyramid. If a support person couldn't answer a question, they'd hand it off to me. And it's funny because I almost never did what customers asked for, but by listening carefully I could see the commonality. Three different people would suggest three different tiers for seemingly three different problems, but I would recognize underneath that the problem here is we don't know how to associate A with B or something. And if I could add a mechanism to this new kind of association, it would fix several different problems. But the cure is very seldom what somebody asks for. So even though I rarely did what the customers asked for, it was super important that I listened to them.
I would not have been able to be nearly as successful if I didn't listen to the customers. It was also very important for me to listen to them personally; if somebody else listened to the problem and summarized it, they're going to have their own little biases and their own little expectations of what's going on or what needs to be done, and it'll destroy information. I needed to talk to those customers personally, to get the subtle clues about what the right thing to do was. And I had a full plate, as our customer base grew. The big change came when we started hiring programmers, and I had trouble getting hired programmers to do what I did.
Craig: Which was what, what do you mean by "doing what you did"?
Steve: I'd have a huge to-do list of things that I would like to code. It was 10 times more than I could do personally in a reasonable amount of time, so I would assign a task to somebody; I would explain it, I would assign it to them, and they would go off and write code for a few weeks. And then I find that understanding their code takes half as much time as it would take me to write it myself – understanding other people's code is not trivial. So I would understand their code, and then I would explain to them why I didn't like it and what I think they should change. And so they would go off for another couple of weeks, and then I have to spend this time of understanding their code again. Finally, after about four turnarounds, I would release the code that I still didn't totally like, because I think I'm going to discourage them and they were going to quit. We desperately needed programmers, and if I scare everyone away by always finding their code is not good enough… and the amount of time I would have spent going over their code and working with them probably adds up to more than if I had just done it myself. So hiring more programmers wasn't improving my productivity, it was dragging it down.
Now I'm not proud of this; this is a failing on my part, that I didn't know how to manage a programming department and work with other people. Anything significant in the world you have to get a team working on it, because, one person just doesn't have the bandwidth. So this is a terrible failing on my part. When I'm describing that it's with regret, but that was my experience. I had trouble hiring people and getting them to take the load, because when other people would start writing code we started having bugs, we'd start having complaints, and things wouldn't be as good as they were when I did it myself. Finally I found Will Levine, he became my right-hand man. He was wonderful, it was a joy to work with him. He was super good – he was as good as me. He would write code and it would be perfect. But finding people like that is hard.
Craig: Was it because the industry was so new, it was hard to find people? How did you find them, what did you do to locate people?
Steve: We would advertise on job boards and stuff, and then I would interview people. And it turns out, I'm a terrible interviewer.
Craig: What do you mean?
Steve: People would come in that seemed good to me and I'd say, "Hire that person, they're awesome." And then on the job it would turn out, they're not so good; they're terrible. And then a couple of times there were people that I just hired because we were under pressure. I remember somebody who was a Forestry major, didn't have much experience programming, didn't seem to be interested in programming, but I just hired him because we were desperate and he turned out to be wonderful. So some of the people that when I interviewed them I said, "I don't feel good about this person, I don't think this person is very good," they would sometimes turn out to be wonderful, and people that I thought were wonderful sometimes turned out to be terrible. Maybe they're smart, but they don't care about doing a good job; if nobody's looking, they're not going to go the extra mile to make sure it's right.
Craig: What did you find? Did you find a common theme of the people that worked out?
Steve: No, I wish I did. I regret that I am not skilled at selling. Selling is an extremely important skill in the world, I wish I had it but I don't. Being able to pick good people is another wonderful skill that I wish I had that, but I don't. I can tell if people are smart, and that's a desired trait but it's not enough.
Craig: So let's go to about 1992, what led up to launching Axys and using Microsoft Windows for the first time?
Steve: Well, the fact that Windows came out and was popular. I did not do the Windows user interface; Axys was a Windows user interface put on top of my report generator. The data store, the report generator, and the accounting was exactly the same, the difference was adding a Windows interface on top. And surprisingly, that made the code base 10 times bigger. The user interface was 10 times more code than everything else. And we did hire a bunch of programmers to do the user interface, because it was possible to find people and hire people like that, and I was considered much too valuable to use on the user interface. So I had nothing to do with the user interface, but Advent had to do that to keep up with the times and not look old fashioned and frumpy. So we got a Windows interface.
In the beginning I hated Windows, because I lost control. The IBM PC, the bios was published and the wiring diagram was published, and if anything went wrong I could debug right down to the bottom layer. I remember trying to get our modem to be interrupt-driven instead of polling. I couldn't get the interrupt to work right, and by looking at the wiring diagram in the IBM PC manual, I could see that the interrupt was gated off with the spare gate in the keyboard controller. And by looking up the specs on that keyboard chip, I'm able to turn that on and get live interrupts. So apparently the PC people thought live interrupts were dangerous and they would have to put extra layers in there to prevent mistakes, but we were one of the first people that could do reasonably fast data downloading with interrupt-driven motives.
Craig: So if you did not have a database, what kind of structure did you use to store the trades?
Steve: The trades are stored in order, in a flat file. You could edit it with a text editor, which also was very helpful in making sure your data's all right. It's completely visible, you can look at it, you can print it, you can edit it, but it would be single lines. Down the road, different people would sort of stick their nose up in the air and go, "Oh my god a flat file, that's so primitive. You're a caveman programmer." But I would always just ace them on speed.
Craig: When did that stop being efficient?
Steve: It never did. Some of the code I've written very recently, I still use flat files. I like flat files. Let me tell you a story about Advent Software. The board of directors becomes increasingly frustrated that I'm not growing the programming department. The company grew like wildfire, so we have 30 salespeople, 30 support people, 30 admin people, and like 4 programmers. This was around 86 or 87, maybe closer to 1990.
Craig: Before or after Axys was launched?
Steve: After Axys was launched. I wanted to write a second version after one year; I learned a whole lot and I wanted to write another version, but because I couldn't hire people that could replace me, I was never able to get free to write another version. And a landmark thing happened; I was doing accounting, I'd become an accountant. I got some accounting books and I learned about double-entry bookkeeping; I had no idea what a debit and credit was, but I learned about double-entry bookkeeping. And I said oh my gosh, this is an incredible invention. I want to write a portfolio accounting system that's a general ledger and the transactions are any collection of debits and credits that balance, we're going to use double-entry bookkeeping that's so wonderful. And I also learned about being bitemporal, where you have a good audit trail because even though you entered bad data, you don't erase it, you put a new record in saying on this state our opinion of that data changed, but we still have the record of the old data. So if you want to compare a report from last month to this month, we can always clearly explain the difference by being bitemporal. I started having all sorts of ideas about a super system that was a general ledger and bitemporal, but I couldn't write it for years. Finally when I got the freedom to write that new super version, that was Advent Geneva.
Craig: Oh yes. And that came out in 1997?
Steve: I think it was about 1994, although limited. Goldman Sachs was a joint development partner and funded part of the development costs, but they were the only ones using it so I guess the general market would not have not heard of it. At that point in time, the board of directors hired a new guy to take over the programming effort, and he thought everything could be done with this product called Power builder. The premise was you don't need programmers, people with domain expertise can just describe what they need and the code will be written automatically. Every now and then, the hopes of artificial intelligence or a fifth-generation language, people would get all optimistic about it, and then it wouldn't work out.
At that point in time there was a burst of optimism that computer languages had been getting better and better and better, maybe Power Builder would free us from needing to hire programmers to do anything. So this guy was super gung-ho on Power Builder, he hired a whole bunch of people, they were going to do everything on Power Builder, and they were going to have this big evaluation contest to see if they should go with my early Geneva code or with Power Builder. And I remember they ran on a database, so they were having terrible problems with speed. They knew that they couldn't send people a new version that ran a hundred times slower than what they were used to, you'd get such customer push back, that would never work. So they were switching database vendors right and left and bitching to the database people, send your experts out here, show us how to denormalize the database, but they just couldn't get anywhere near the speed. Finally they had the promised dramatic technical evaluation to decide which code base to go forward with, and I was writing 76 times faster than them. I was producing these beautifully formatted PDF reports, proportionally spaced fonts and everything, and doing all the calculations.
They were just trying to pull the trades out of the database and then throwing them away; they didn't have the accounting code yet, they didn't have the reporting code yet, and they're running way slower than me, so they're way behind. So I was thinking surely I'm going to win this technical evaluation. Then I was absolutely astonished to find out the board of directors said no, they were going to go forward with the other codebase. Then I realized that this whole pretense of a technical evaluation was just trying to be kind to me; instead of telling me, we don't trust you to lead us forward, we've picked this new guy to lead us forward, it was all a pretense, it was preordained. So I sold my stake in Advent Software a little while after that, because I thought Advent Software was going to fail; y whole net worth was tied up in a company that had just gone insane and gone off the rails, because I knew Power Builder could not do some of the things that had to be done, and it was never going to work. Also, I was way overworked; because I couldn't find people to delegate to, I had been working 60 hours a week for years. I was burnt out and it wasn't fun. It's so strange, Advent Software was so fun for me for a bunch of years. I loved it, it was one of the most glorious experiences of my life. But towards the end, it got to be a discouraging and depressing, and just slogging through all sorts of stuff. I didn't like it and I had to get away for my own health. So I sold my stake in Advent Software.
Craig: So that was in 1983, 1984?
Steve: Yeah, about then. After I left, the Power Builder project collapsed. I wasn't there, but I still had friends at Advent. So I'm talking to my friends at Advent, and they tell me that they started calling it Power Blender instead of Power Builder. Management actually wanted to erase my computer directory when I left and my files on the central file server because they thought my code useless. But some of my programming friends had saved my Geneva prototype, thinking this may be necessary someday. So Power Builder failed and they resurrected my Geneva code and commercialized it, but without me. So I wrote the first version of Geneva, but I was burnt out on Advent and gone from Advent before the actual commercial release of Geneva.
Craig: Wow. So they used your initial code that was on your computer, which they didn't want to use at first? When they realized Power Builder had collapsed, they resurrected your code and launched Geneva from that?
Steve: Correct. So my ideas are all there: the general ledger idea, the bitemporal idea. I also found a much better way to do bonds. I had a lot of good ideas and all those ideas are in Geneva, and those ideas came from my prototype.
Craig: So what else made Geneva unique? Besides the fact that it's a GL and bitemporal, is there anything else about Geneva?
Steve: It was very flexible, in terms of what security types it could do. You could do ad hoc transactions with the chart of accounts, you get to make up the chart of accounts yourself. Well, actually I intended to make up the chart of accounts, but I think when Geneva finally went out you couldn't do the chart of accounts. They had to back off on some of the ideas that I had, because it would just take too long to develop. But it was very flexible, and it was an excellent vessel to pour knowledge of security types, into because it's flexible enough to accept all that knowledge. At that time hedge funds were starting to take off, and hedge funds typically trade a wide variety of financial instruments, and Geneva knew about all those financial instruments. You're doing all these different kinds of swaps: you're doing credit default swaps, you're doing currency swaps, you're doing swaps that are live versus some index. Geneva could do all the things that hedge funds wanted to do, because it was flexible enough to do that, and the other people typically weren't that flexible. So Geneva struggled for a while, but once the hedge funds started liking it, it took off. And they could charge higher prices for it. So that was a big winner for Advent.
Craig: So how did it come to pass that you're away from the company for a little more than 10 years, and they bring you back to fix Geneva?
Steve: Well actually, not to fix Geneva. I wanted to fix Geneva. I finally said I think I could be helpful, and I go back in and interview. All of the programming people were so excited to have me back and said, "This is so awesome. We need you, you'll save us. We need a top designer like you." But as it turns out what they said doesn't matter, it's what management says. And the CTO of Advent at the time mostly wanted me for maintenance work; I didn't realize that. They considered Geneva to be a cash cow and they didn't want to take a risk with it. They were making good money, and if I come in suggesting low-level rewrites to fix foundational errors, they think why would we do that? We have this cash cow; that's very risky, rewriting stuff. Sure we have problems, but if we rewrite stuff we'll just have new problems and we'll have no new features for 18 months. So after a while it became apparent that the only thing that was going to happen at Advent on my second stint was a maintenance coding, and I'm bad at maintenance coding. I found maintenance coding to be very frustrating, because you couldn't reason about what was going to happen if you change the code. I was bad at maintenance coding and didn't enjoy it, so I moved on from my second stint at Advent.
Craig: Gotcha. So after that, you then started your own company called Strand Theory, where you built your own portfolio accounting system called Summa.
Steve: Yeah Summa, after Summa Arithmetica. The first published description of double-entry bookkeeping was a book written in Venice in 149, it was called Summa Arithmatica, so it was a homage to that first published description of double-entry bookkeeping. That was fun and the software was wonderful, but I ran into a sort of brick wall. It had to be sold to a fairly large financial institution, because I personally couldn't finish it. A credible portfolio accounting system was going to take 20 or 30 man-years of coding, and I can't do 20-30 man-years myself in a reasonable timeframe. So I did a whole lot of interesting prototypes, and several large financial firms were very, very fascinated by my code and very interested in it. I had Internal Champions that wanted to buy it, but big institutions don't want to buy code that one guy wrote in a spare bedroom. If there's no team behind it, they're very nervous. I could be hit by a bus, and the software workout.
In fact, I think as part of the Sarbanes Oxley thing, they are legally required to only do business with counterparties that have a certain heft and approval and ISO rating. I don't know what it is, but it's possibly even legally wrong for a big brokerage firm or hedge fund to a base a big piece of their business on something that one guy wrote in his bedroom. I told my wife it would take me two years to write Summa and then two years to sell it. It took three years to write it, and then after four years I still hadn't sold it. So I realized I had to sell to a software company that had a big enough headcount and a big enough cloud to be a credible counterparty for the large financial institutions. So in the end, that's what I did.
Craig: And how did that work out?
Steve: There was a slow period at first, but now I think Summa is starting to get traction and starting to build up. The software company I sold to was called Summa FT (for financial technology), they're sort of off the radar now but they are starting to get traction. They also combined it with a bunch of other software. I had a peer portfolio accounting engine… Typically people want a full solution, they want a trading system, a risk assessment system, they want performance attribution, they want watch sales, they want all sorts of things. So by combining it with a broader spectrum of software from a single full solution and seeing a big team that can back it up, I think that'll be a win.
Craig: And that was about six years of time.
Steve: Yes, Strand Theory was a good six years of time. I stressed the heck out of my wife by not getting paid for six years, but it worked out in the end. The entrepreneurial route can be stressful.
Craig: Oh, it certainly can. So what are you doing now?
Steve: I'm actually dealing with a couple different people doing contract work, and deciding who to go forward with. I have a pretty clear vision of where I want to go, but it's not ready for public discussion yet. One thing is, I don't want to retire. I retired for 10 years. After I sold Advent Software I didn't have to work. I mean, I wasn't wealthy like Ferrari's and yachts, but from investments I could earn a professional level salary, so I didn't have to work. So for about 10 years I didn't work, and after a while I didn't like being retired. I never went anywhere, I never did anything, I never met anybody. I was just sort of put out to pasture. So nowadays I have the point of view as I get older, I want to reduce my hours and have more flexibility to travel, but I don't want to just go cold turkey and retire. I mean, I would program all the time, even if I'm not paid to do it. That's what I love, that's what I'm good at. I think a lot of people have a job that they don't like, so of course they're eager to retire the first second they can. But if you're actually getting paid to do what you love, you don't want to retire. So I don't want to retire right now.
Craig: And there's no reason why you should. It's a whole new world. You can keep working, keep programming, keep coming up with new ideas, and maybe start something else.
Steve: That's right. So I'm excited about what the possibilities are going forward, and we'll see. I'll have to do another podcast in ten years to cover the next ten.
Craig: Hopefully I'll still be doing podcasts then, I'll have to look you up. Steve it has been a pleasure to talk to you. I could keep going on and diving in-depth, but I think you provided a lot of information that I never knew before, and I've been in the industry for a long time. I want to thank you for sharing all this.
Steve: My pleasure. I hope the story is interesting to people, and maybe helps people.
Craig: I hope so as well. It's good talking to you, thanks so much Steve.