Kickstarter to accelerate Windows version development?

I’ve got money in my pocket, begging to be spent on Scrivener 3 ASAP.
If I could toss a benjamin or two at getting the Windows version out a little earlier, I would, and never regret it.
But would it help, given the lessons of “The Mythical Man Month?”

I don’t know. But I thought I’d raise the issue.

It takes just as much time and effort, if not more, to properly plan and manage a Kickstarter campaign, as it does to manage the project the Kickstarter is for. Kickstarter is not a magic Band-Aid. It is an alternative way of funding a project.

Be patient. L&L are doing everything they can.

Money isn’t caffeine, and programming isn’t data entry. This isn’t the kind of work where you can train someone in a couple of days and nearly instantly see a multiplication in how much work gets done. It’s not the quite the same, but it’s a whole lot more within the realm of the kind of thinking that would suggest the more authors you hire to finish Game of Thrones 7 the faster it will get done. :slight_smile:

I’m aware that tossing money at a software project doesn’t always help, especially if the project is near release. I wrote software for a living for three decades, and saw plenty of proof of the mistaken assumptions about program management that “The Mythical Man Month” describes. You can’t make a baby in a month by getting nine women pregnant.

But I have no idea how close the Windows release is.
If it’s still, say, 7 months out, extra resources might help.

This same suggestion was made repeatedly during the much delayed iOS development.

In that case, after the failure of an internal developer to make progress and similar failure of outside contractors, Keith the developer of Scrivener for Mac, stepped in and completed it himself, more or less starting from scratch, with a result that puts big budget companies to shame.

The same applies to Scrivener for Win. L&L have a small dedicated team who know the program and the environment intimately. They will bring V3 for Win to market in the shortest possible time, with the absolute best product.

Spending money bringing in outside contractors unfamiliar with Scrivener and it’s purpose would likely delay it and potentially result in a two humped camel.

I have developed software (and hardware) over 30 years and know the risks only too well.

The L&L dedication to developing best for purpose can be seen in the Mac V3 beta program that has gone on beyond the point many companies would have. When Keith is ready to go live with it, it will be as close to perfection as possible. Compare that to companies who use all their customers as unsuspecting beta users, with half baked rush to market. Even Apple could be rightly accused of that sin. MS, Adobe and others most definitely.

I bow in respect and amazement at every new iteration Keith and his great team develop. Leave them to do it their way and we’ll get the absolute best when they release V3 Win.

Meanwhile, being really cheeky, invest those Benjamin’s on a second hand Mac Mini or MBP and get V3 in the next few (fingers crossed) weeks. :laughing:

Or take a punt on the free Windows 3 beta that comes out the same day.

That may be an option for those selected for the beta program. For most users one would guess another 6-12 months.

Meanwhile for those who can’t/don’t want to wait, a solid option. Late 2012 i5 Mini on eBay at good prices - upgradable, solid, reliable.

It will be an option for anyone who owns a license for Scriv 1.x.

Can I connect a 32" 4K monitor and four 24" 1440p monitors to a MAC mini or MBP?
I’m kind of used to having 23 million pixel wall in front of me.

More seriously, I don’t have time to learn the Apple OS, or any desire to set up shop in Apple’s increasingly walled garden. It’s not to my taste. And I’m willing to try the Windows Beta, that was great news and removes the need for this thread.

Certainly a couple of 2560 by 1600 monitors. on the Mini (fit about 10 of them silently in the space of a typical Win desktop) or 3 monitors + built in on the late 2013 RMBP (mine remains an outstanding performer SSD storage std, i7 solid all alloy construction) and the walled garden bit is a myth on MacOS. Yes, there is a secure garden in iOS.

It is very much a generous offer from L&L on the Win Beta, so no need to throw Benjamins anywhere for the intrepid (L&L’s words). I’ll no doubt be intrepid enough to run it from time to time on my standalone Win Mid-Tower that warms and fills the room with that soothing hum. (and under Parallels on the RMBP15) 8) 8)

There are in fact several factors that slow down development on Windows and which also don’t make it feasible to throw more men at it, but these none of these factors is cash.

One of the biggest factors, as has been mentioned upthread, is that it is no simple matter to train someone to understand the ins-and-outs of Scrivener so that they know it well enough to code it. It’s a large app with a big codebase, with huge amounts of code just dedicated, for instance, to the rich text system, or Compiling to so many different formats (the ebook, FDX and Fountain exporters are written from scratch on both platforms; on Windows, they also had to write their own RTF converters from scratch). For a developer to do a good job, they need to know not just what the different features are, but how they are integrated. They have to know all of the things that most users will never notice.

To this end, the Windows version is a constant back-and-forth. We have Lee, the lead developer and head Windows bod, and he has Tiho, a hugely talented coder. They work together to build the codebase and get the Windows version working and looking as it should. I have to do my best to communicate all of the changes in the Mac version as they happen so that they can be translated to the Windows version (and I’m sure Lee and Tiho would have a thing or two to say about how I do on that score. :slight_smile: ) But we also have Jennifer, whose main job, along with heading Windows support, is to constantly test the Windows version and point out where it is missing features or minor points of integration that exist in the Mac version and might otherwise be missed (Jennifer being one of the team members who know Scrivener the most intimately). There’s Brian, too, who works part-time keeping the Windows bug-tracking up to date for us.

Trying to bring anyone else on board would only slow things down, because we’d have to spend our time training and teaching them, and they would have to familiarise themselves with a massive codebase. On top of that, from that point on we’d have to spend time communicating and liaising with that person to ensure all work was coordinated (more difficult when we are spread across the world).

There’s also the matter of the platform. Lee and Tiho use Qt to develop the Windows version. As you perhaps know, there is no single obvious choice for developing apps on Windows. On the Mac, it’s Cocoa and that’s it. (These days there is the choice between Swift and Objective-C, but those are just different languages that use the same frameworks.) Lee decided on Qt early on as the best solution for implementing Scrivener on Windows, but it is difficult to find really good Qt programmers (Tiho is one of them, fortunately!).

The Mac also provides a number of advantages for faster programming. For instance, I only really have to worry about two different screen resolutions - Retina and non-Retina. The range of resolutions on Windows is enormous, and Lee and Tiho have faced an uphill struggle getting Qt to work really well with HDMI screens - I believe it took them something like three months to crack the worst of that problem alone.

The Mac version has a five year head start on the Windows version, too, and even though the Windows version has been around for six months now, it has been far from easy for Lee and Tiho to close that gab because all the time they’ve been working to catch up with the Mac version, I have not been sitting on my laurels, and 3.0 has been in development for around three years now. So they’ve been working to add all of the 2.x features and the 3.0 features.

So, throwing more manpower into the mix would be very unpredictable. It’s possible that it could speed things up, but equally possible that it would only slow things down.

I expect the Windows version will take a good few months longer than the Mac version, and I wouldn’t be surprised if it wasn’t ready unit the second half of 2018. But we want to get it right, and when we do, we’ll finally be at a stage where the Mac and Windows versions can start moving forward together - a point we’ve been aiming for for a long time.

And yes, in the meantime there will be a Windows 3.0 beta. It will be more of an alpha, really, at first - for the more intrepid testers, or for those who work cross-platform and are happy to do the heavy-lifting such as Compile on their Macs but can continue to write in the Windows 3.0 beta. It’s hugely frustrating for us, too, because we are aware that our Windows uses often think we see them as second-class citizens, when that is far from the truth. We’re working really hard to give them the best possible version of Scrivener for their platform - it’s just taking longer than we would have hoped to get both versions on a par. I think Scrivener users will be very pleased with how Scrivener 3 looks when they fire up the beta, and I hope that they’ll find the final version worth waiting for.

All the best,
Keith

Thanks for taking the time to lay everything out, Keith.

Me. I don’t feel like a second-class citizen. I understand the challenge of multi-platform development. It’s not a surprise that Mac is the platform you’ve decided to premiere Scrivener 3 on.

It’s just this: 1.9.7 is wonderful, but I see all the things that the Mac version can do, and will do. I want it, like a man eating a good sirloin who wants the chatteubriand the guy at the next table. He’s making little moaning noises as he eats it, and it smells so good!

But I’ve learned a lot in this thread, and now I’m a happy man. I have a plan!
I’ll use the Windows beta when 3.0 comes out, and pick up a Mac to do compiles on. :slight_smile:

You and your team rock it hard, Keith, and that’s too damn rare these days.
Thanks!

Another Windows user here, facing the same dilemma as pcgeek. After many years of searching for a good creative writing tool that “fit” me, I am thrilled with the capabilities of Scrivener, and tantalized with anticipation for Scrivener 3.

Thank you for that informative and helpful post about Windows development, Keith. Perhaps, you can help clarify a few things that will help me decide my best course. Here are some assumptions that I have about the upcoming Windows Beta:

  • The file structure and/or file formats will undergo changes, from version 1.9.7 to 3.0.
  • These changes will require that existing 1.9.7 projects be imported into Scrivener 3 for working on them there.
  • Projects in Scrivener 3 will need to be Saved As 1.9.7 projects to work on them in the current Scrivener. Of course, any features unique to Scrivener 3 will be lost in this conversion.
  • As with most Beta software, it will be recommended that one does NOT work with real data, using the Beta version. Rather, the Beta version will be intended for debugging and fine-tuning. So, Beta users risk losing real work if a bug should clobber a project.

If these assumptions are accurate, then it seems that I should not do real work on Scrivener 3 Win Beta, but rather, should stick with 1.9.7 until 3 is released.

Further, wouldn’t this same caveat also hold true for doing real work on Scrivener 3 Win Beta, and as suggested above by Amcmo, picking up a Mac for the compiling?

Thanks for any thoughts, Keith.

-Ken

[p.s.]
As an aside, I am also a (retired) software developer who very much appreciates the value of a small, focused, and talented team versus a large, disparate, and less dedicated team. My working philosophy, gleaned from years of personal experience, is that the ideal team size for an ambitious new software project is a handful, but that the laws of diminishing returns start making themselves known after about a half a dozen or so.

I called this ideal team size the qualitative maximum. Mathematically, my rule said that, beyond a qualitative maximum, the resulting quality of a software project is inversely proportional to the number of programmers who worked on it. Historically, some of the very best and most innovative projects have been done by teams that are downright tiny, compared to many corporate software departments.

The first corollary is that the rule apply to projects of all sizes. At first blush, this seems a paradox. Wouldn’t bigger projects demand bigger teams? It might seem so, but in fact, the bigger a team gets, the harder it gets for them to insist on perfection, or as close as one can get. A smaller team has a much easier time doing things the way that they know is best, as opposed to doing things with expediency looking over their shoulders and/or calling the shots. But, I digress…

The format conversion is not reversible: once a project is converted to the Scrivener 3 format, reverting to the previous format will not be possible.

Everyone has a different level of risk tolerance, and I can’t comment on the stability of the Win Scrivener 3 beta. But I’ve been using the Mac Scrivener 3 beta as my primary version for months and haven’t lost a syllable. I would expect the early Windows betas to be potentially risky, but to become much less so on the way to the release version. As always, backups are your friend.

Katherine

Like Katherine, I have been in the Mac V3 Beta (and iOS) and found them amazing in their stability and maturity from day 1. However, as Keith has likened Win V3 to an Alpha at the very early stages I will be using that beta on non-crucial work and compiling on Mac.

I’ve been a developer on Mac and Windows since the very first releases of both way back (80’s?) and regularly coach users on both.

pcgeekesq voiced concern on learning MacOS. For what it’s worth I can train a Win converter to solid productivity on Mac in less than half a day. Takes me somewhat longer training in the opposite direction (then I don’t get much practice at that :laughing: )

cheers

Could you tell us a little about your test suite? I’ve seen these good test coverage go a long to helping devs A) wrap their heads around what the heck the software is supposed to do, and B) provide regression tests to make sure they didn’t accidentally break an obscure feature.

Not that throwing money or new devs at a codebase just as it’s trying to wrap up a release is a good idea! But maybe after v3, more devs could pitch in to document the system better via more tests?

OTOH, maybe you have 100% test coverage and that still doesn’t solve the problem. :wink:

PS: don’t actually strive for 100% test coverage, that way lies madness & diminishing returns. :slight_smile:

I feel your pain, OP, and that of all Scriveners Windows users.

Proof? I came into the Scrivener world via the Windows window. And the gods know, it’s not easy software to learn (but SO WORTH it.) And I recall the thrill I’d get when I learned of some great undiscovered task Scrivener could perform. And then the despair when I discovered “Oh, sorry, that feature is only on the Mac version.”

I finally bit the bullet and laid out the cash to buy a Mac and have never looked back. The Mac version is truly a marvel, and from what I read, it will offer heaps more with the new release.

I truly hope the Windows version, when it’s finally ready, comes closer in functionality to the Mac version. Hang in there, baby.

I have used a Mac before, it’s just been a while. The last one I used was a Macintosh 512K, around 30 years ago.

I don’t think learning MAC is going to be a problem, and I was pleased to learn my Office 365 subscription allows both PC and Mac installs, up to a total of five. As long as the Mac mini drive the HDMI port of my 4K monitor (the PC is using the DP port), I’m set.

It won’t be a problem — if you’re the sort of person who isn’t afraid to click around a bit to find out how things work. Most of it is fairly easy to grasp and it’s quite difficult to break things.

Couple of things which I remember fooled / irritated me till I got used to them.

In Finder (the File Explorer), to open or run a program / file etc you use cmd-down arrow — Enter renames the file instead.

And if you use keyboard shortcuts you’ll miss Windows’ automatic alt-letter combinations to walk through menus. Mac programs don’t have this: either a shortcut is provided within the program by the developer or you have to roll your own. (Actually, there is a way to walk through the menus, but it’s not quick or helpful, so I never do.)

It’s easy enough to create your own, but the simplicity of the Windows shortcut method is the one thing (really, it is just about the only thing) I miss about Windows, even after 12 years on Macs.

Oddly, I rarely use that when at a Windows computer, because I often can’t remember where a menu item is, or what letters/words that item starts with, so I don’t know where to navigate to. For that reason, on a Mac, I don’t often navigate the menus with a mouse either.

I’ve grown addicted to the Help->[search field] function that almost all Mac apps have in their menus. Type a word that’s in a menu item, and it will show up as an item in the results list. Arrow down, and it will show you where in the menu it is. Hit enter, and that menu item will be selected. I wish that was a built-in Windows feature.