Nova by Panic
nova.app
nova.app
Seems like there's nobody better than Panic at doing this sort of thing. They're willing to push Apple's UI forward, but they always do it in a way that feels Apple-y. Didn't they also pioneer a tab UI that Apple ended up adopting?
I also fondly remember how wonderful the web development deployment workflow was in Coda. This was back before source control was ubiquitous and CI/CD was required for any real production environment. It was the cleanest way I'd seen to go from saving in your test editor and having a clear path to SFTP it to the server. I half recoil in horror and am still in awe of how considered their experience was.
Your memory may be playing tricks on you, it wasn't that long ago. Coda 1 had SVN support out of the box, and at the time SVN was already old and in decline, not to mention CVS and other lesser source control systems. By the time Coda 2 came out, git had won the DVCS battle, and was built into it.
Now, granted, back then I wasn't very keen on version control either but it's not because it wasn't there, it's because I was young and inexperienced, and didn't know any better. Plus, those days the only common use for source control was actually, well, source control, unlike today. It was something you had to discipline yourself to use for no immediate benefit.
I started my career at around that time in a company using Python for web application development and everything was in SVN but already in the progress of being moved to git and while there wasn't a CI/CD server, all deploys were done running a single cli command. On the other hand for years to come I have seen e.g. people and agencies doing websites in Wordpress making changes directly in production.
In that circles, which often included people with no heavy technical background like designers that learned some php/html/css Coda was quite a relevation I think.
Cabel, and Panic in general, are true heroes of mine.
SoundJam's hierarchical playlist has yet to be replicated by any other music player to my knowledge.
Like playing music by albums, or artists and it would recursively play all of the music within those albums?
It would then be played in order, yes, recursing through all the layers.
I might be able to replicate this by building a front-end for it which converts it into a flat playlist for Spotify/Apple Music etc.
I definitely wanted to! (I'm the Charles in the story.)
This is a great example of how Jobs did not want to compete with his developers, he just want to make a better Mac for their customers.
I do a significant amount of text engine work and I'm skeptical what they implied by this. The likely case is they glued together other solutions (Like HarfBuzz/FreeType/etc) and expose their own API on top of that. This is perfectly acceptable and even encouraged for accessibility reasons. It may be that CoreText isn't acceptable for their use case.
What I think this would be misinterpreted as them writing the whole stack from scratch. For example, shaping is part of layout and it would be monumental if they wrote their own shaper given even HarfBuzz, DirectWrite, and CoreText do not have complete coverage yet. Additionally, BiDi + line breaking + shaping has bugs even in Chrome on some edge cases.
I think it's entirely plausible that Panic also shipped a text-layout system without full bidi support -- maybe that's why theirs is faster and less buggy on LTR text. The left-to-right language market (English, Spanish, French, Russian, Chinese, Japanese, Korean...) is probably big enough to support a Mac app development studio on its own.
I don't think saying to Hebrew/Arabic programmers "sorry, this product isn't for you because it would require a large amount of effort and we can't support it" is an unreasonable thing for a small shop to do. Yes, Apple and Microsoft and Gnome should support RTL because it's important for someone to do it, but there's nothing wrong with saying "this product isn't designed to solve all problems in all languages".
I'm not sure how many good native text editors don't have their own text editing engine.
The last time I was working on a text editor (KDE's Kate) and found a bug in the text layout engine it was written against (Qt's), I wrote a patch, submitted it upstream and it made everyone else's apps better, too.
I can't imagine the world of hurt, discomfort and frustration of developing against a lib set I can't read source code of or improve.
Thank you.
It boggles the mind that anyone who can write code would ever use a closed source operating system.
It's always fun for me to meet people who do things the complete opposite I do them. It's oddly satisfying, like, I'm glad someone is my polar opposite on an issue or activity.
I've also grown to loathe that first-line tab beginning the second paragraph. It makes left-aligned text look wonky.
I loathe centered text too.
I'm not a rounded rectangle person.
I think the colored block UI that's all over Android, sites like HN, etc. looks tacky. We went from semi-transparent glass UI to flat colored blocks, and somehow interfaces got slower and more processor intensive. Now, that's a horse of a different color.
Consider getting a separate USB trackpad and putting it in a "mouse like" position so your wrist is straight and you can raise the laptop to just under eye level.
So I'll have a proper monitor and a standalone keyboard in front of me. And the MacBook screen on the side is being used to display secondary information (chat windows and logs I don't need to actively look at).
Having the fingerprint sensor and the TouchBar lock button within reach are also nice (yes, I actually like the touchbar)
But more to the point: Apple has proven it _can_ be that good, so I want a control that _is_ that good. Why would I ever go backwards?
It's not like Apple benevolently gave this touchpad to the world, for our betterment and happiness, but for the singular, exclusive purpose of luring you into their ecosystem. But you don't benefit when they profit, you were the prize.
You should demand they give it away for free, because you should not give a shit about their profit because they (it) do not give a shit about your life or freedom or the economy of the social strata you live in. It's an alien machine that will eat you or it will fight you but it won't know the difference.
For me it's this, it's been proven I can get an OS that is open and free, doesn't mean I have to support and buy into some terrible multinational corporation whose goals I do not agree with, and that I get to have control over my own OS in a sense that is utterly freeing compared to MacOS or Windows. So why would I ever go backwards?
I pay Apple for hardware and software. I get good value in exchange. I don't particularly care beyond that.
You're trying to change this into an argument about freedom and open source. It's not. I want a trackpad that feels premium, the same reason I buy a nice car. I do not care how it's done and I do not care about the price.
tl;dr If the Linux ecosystem could provide it, good - I'd consider it. Put up or shut up.
And the most important feature for me. I can work a full day on it without any RSI related symptons. No other mouse can do that for me.
I use a normal mouse on my gaming rig, though. Because trackpads are awful for gaming.
There are keyboard shortcuts for those, which are even nicer imo. Reduces the amount of times you need to take your hands off the keyboard.
From GP:
> use a closed source operating system
That's not "Windows".
That's just not true, though. Here's a git repo listing what works and doesn't work in Linux for all of the macbook pro models since 13,1 (released in 2016): https://github.com/Dunedan/mbp-2016-linux
You'll notice that power management (suspend/resume) doesn't work for any model, wifi only works for a few select models, and support for audio is pretty spotty. If you buy Mac hardware, you're pretty much locked into MacOS if you want to have a reasonably acceptable experience.
BSD support is much, much, much worse--it basically doesn't work at all for any relatively recent model.
Well, would probably work fine with an external keyboard/mouse :D
NVMe should crash right now like it did on Linux before 5.4, but the Linux patch for that https://github.com/torvalds/linux/commit/66341331ba0d2de4ff4... is absolutely tiny, I could probably replicate these quirks in FreeBSD in a few minutes.
The SPI keyboard and touchpad thing though is just.. WHY?? Everyone went with HID over I2C, Apple went with a completely new protocol over SPI. So annoying. I wouldn't want to work on supporting that crap.
> power management (suspend/resume) doesn't work for any model
um, that page says that you have to disable a power saving state on NVMe and it would work on any model with Intel GPU.
These days it just works though.
The term to look for is “Windows precision trackpad”.
I like developing on Windows. Especially since the programs I write are run only on Windows. That's what the specific trillion dollar industry my employer serves uses mostly on desktop.
I don't want to tweak the platform. I want to concentrate on the code I write. I could be equally productive on OS X or Linux, but frankly, I don't care. They are all interchangeable computational substrates for me. As long as you can write any program on them, that is...
From my employers point of view it is irrelevant if I could fix the platform since they most certainly don't want to pay for it.
This is not evil. It's just how some parts of the industry work.
As experienced devs with love of open source, they made this choice after thinking about it. They just have different value weights for their goals and those aren’t the same as other folks. Not a biggie
Which you have to create and convince the maintainers to accept. Some maintainers are gracious and others not so much.
Impression I get with Microsoft 'developer doesn't want to work on it' isn't a show stopper like it is with open source.
I get your argument for a closed platform where you have a direct phone line to its developers that will fix any platform bugs you find ASAP, but MSFT hasn't been that kind of platform for years...
Some of us want our work to actually reach people who don't write code or sysadmin their own computer, i.e. most people in the world. I, for one, think my effort is wasted if it doesn't benefit those people. So while working exclusively on a free-software platform is tempting from an ideological purity point of view (edit: and I envy people like you that manage to make a living doing it), I don't think I'd ever actually do it.
Edit: I should be more concrete and less snarky. Working on developer tools is good and necessary, and you can do that effectively on a free-software platform like Linux. But I choose to focus on end-user-facing software, particularly in the field of accessibility. I could work on desktop Linux accessibility, for the vanishingly small number of blind people who use desktop Linux (and that number is shrinking; one of my blind programmer friends just switched to Windows). Or I could target one or more of the mainstream platforms where the users actually are. I suppose I could work exclusively on web applications, but I don't think that would be the best use of my skills. And even then, while I could develop primarily on Linux, I'd have to test on other platforms too.
Someone has to do it. If you have the skills, why not you?
The majority of the internet is run on free software, and free software touches nearly every stack, even ones that are otherwise proprietary.
With regard to accessibility, there are open source tools out there that are pretty great for blind users, but they still need more work. There are also blind users that can't afford a Windows licenses or expensive screen reader software. I've worked with a local charity that helps people with sight impairments, and the money just isn't there when it comes to expensive software licenses and hardware.
If more open source options for people that have sight impairments become available, that would help a lot of those that are currently priced out of using modern technology for work, leisure and social interaction.
I really wish you would step up and embrace the ideals you espouse, because I think that you could make an amazing impact if you applied yourself to it.
> one of my blind programmer friends just switched to Windows
Where they happy that their choices were being reduced to using a closed source operating system, now forever being dependent on the support of a giant corporation, partially because their friends like to write code that "actually reaches people" instead of contributing to an open and accessible solution used by a vanishingly small number of blind people?
My MFC/VCL applications work just fine today, and can be easily extended to take advantage of modern UWP APIs.
You can start by having a look at,
http://toastytech.com/guis/cedar.html
"Eric Bier Demonstrates Cedar"
https://www.youtube.com/watch?v=z_dt7NG38V4
"Alto System Project: Dan Ingalls demonstrates Smalltalk"
https://www.youtube.com/watch?v=uknEhXyZgsg
"SYMBOLICS CONCORDIA ONLINE DOCUMENTATION HYPER TEXT MARKUP 1985"
https://www.youtube.com/watch?v=ud0HhzAK30w
You can see how NeXT builds on many of these concepts on the famous "NeXT vs Sun" marketing piece,
https://www.youtube.com/watch?v=UGhfB-NICzg
Sun also had some ideas along these lines with NeWS,
"NeWS: A Networked and Extensible Window System,"
https://www.youtube.com/watch?v=4zG0uecYSMA
Naturally OS/2, BeOS, Windows, macOS, iOS, and even Android share some of the ideas.
Now, before I proceed note that actually modern Linux distributions have all the tooling to make these concepts happen, but it fails short to have everyone agree on a proper stack.
So basically, the main idea is to have a proper full stack in place for developing a Workstation computer as one single experience, from bottom all the way to the top.
On Xerox's case, they used bytecode with in-CPU execution via programmable microcode loaded on boot, and later on just a thin native glue on top of host OS.
The environments had frameworks / modules for the whole OS stack, supported distributed computing, embedded of data structures across applications (OLE can trace its roots back to these ideas), REPLs that not only could interact with the whole OS (commands, modules, running applications), it was also possible to break into the debugger, change the code and redo the failed instructions.
Linux distributions get kind of close to these ideas via GNOME and KDE, but the whole concept breaks, because they aren't part of a full OS, rather a bunch of frameworks, that have to deal with classical UNIX applications and communities that rather use fvwm (like I was doing in 1995), and use a bunch of xterms, than having frameworks talking over D-BUS, embedding documents, all integrated with a REPL capable of handling structured data, and call any kind of executable code (including .so, because the type information isn't available).
And then every couple of years the sound daemon, graphics stack or whatever userspace layer gets redone, without any kind of compatibility, because it is open source so anyone that cares should just port whatever applications are relevant.
It is quite telling that most Linux conferences end up being about kernel, new filesystems, network protocols, and seldom about how to have something like a full BeOS stack on Linux. Even freedesktop can only do so much.
A perfect summation!
With no access (or ability to patch) the platform source code you are left with a) hacky work-arounds, b) re-implement the component or c) change the app's design or feature to compensate. All of which are a pain / more work / risky etc, etc - just to work-around bugs in the platform.
Sure you can file radars (I do), but whether something gets fixed or not, is up to the gods...
Mozilla? Getting your patches merged is rather easy and very pleasant. Firefox is truly a community project we all build together.
"our joy at Panic comes from building things that feel truly, well, Mac-like"
"Appley" would be living with the limitations of apples implementation because apple knows best, and they tried their hardest to lock you out from any alternative option.
Plus ca change in a proprietary world.
That's a _great_ way to do a subscription.
I do think Apple could do much better with backwards-compatibility. They don’t need to go Microsoft’s extreme. I thought they’d found a good compromise for years on the Mac, but it’s tipped much too far towards just breaking everything lately.
I use Sketch rather rarely once in maybe few weeks, but i've found out that it quickly becomes uncomfortable to use if you don't renew the license.
Once even one person on your team moves to Figma it becomes absurd to use something where you have to share fixed files around and are stuck with only using Macs for your design work.
I still use Sketch for things that only I work on outside of work because I’ve already paid for it but having living documents and being able to share with the rest of the company without them installing software is essential now. Not to mention being able to use my powerful PC workstation not just my Mac laptop is great too.
Buying a subscription gets you one year updates, and then whatever that last version is remains functional forever.
> When purchasing an annual subscription, you will immediately get a perpetual fallback license for the exact version available at the time.
https://sales.jetbrains.com/hc/en-gb/articles/207240845-What...
(That is, the next sentence in the bit you quoted is:)
> You will receive perpetual fallback licenses for every version you’ve paid 12 consecutive months for.
So while the subscription was valid, you got upgrades, and then if you don't renew, you have to downgrade. It's their way of nudging customers to keep paying. It's working for me.
https://sales.jetbrains.com/hc/en-gb/articles/207240845-What...
[0] https://sales.jetbrains.com/hc/en-gb/articles/207240845-What...
[0]: https://sales.jetbrains.com/hc/article_attachments/203511589...
https://sales.jetbrains.com/hc/en-gb/articles/207240845-What...
The app now has a special licensing setup that restricts your installs to two machines.
Sketch made a thing about leaving the App Store.
But the App Store licensing and update process was way better than what it has evolved to.
That's the one thing that pushed me to Figma.
It was bad enough that it's MacOS only. Now I can only have it on 2 machines?
"Your [sketch] license can accommodate up to 2 devices — one for each seat you've purchased, plus an extra one we offer as a special perk."
I had to reply specifically calling out that this was not a special perk. I've paid the full license price at least three times. It should be available to install on as many machines as I want if I'm the only one using it.
It is Sketch's job to catch when someone is abusing this and create tech to handle that.
I think that this is actually not about preventing privacy, it is to try and get people to move to their cloud product.
But in the past decade or so we've seen companies move away from that; leaders (I would say) are companies like Google whose Chrome browser was "evergreen" and released / updated constantly with no extra cost, and Apple who made iOS free and changed MacOS / OSX to the same system (although they still do only big bang annual updates, probably for marketing reasons), as well as pretty much all software on iOS - although with that platform, microtransactions also became a thing.
I think the "use the old version indefinitely" is actually irresponsible as soon as the application opens a network port: it's critical for users to apply security updates as frequently as possible. I don't want any of my users finding the need to run older software: it puts them at risk, and makes customer support more difficult.
So, if users can always run the latest-and-greatest regardless of their subscription status, (it seems that) the only way to reward people for having subscriptions is for some subset of functionality to only be available to subscribers.
For PhotoStructure's case, I'm not willing to hold their libraries "hostage" in exchange for an active subscription, so even when people allow their subscription to lapse, they still can open and browse and interact with their libraries using the latest-and-greatest version.
Paid features are (like auto-updating "smart" folders, auto-organization, geo lookups, and face detection) are applied if a subscription is active.
I'm hoping this will be a reasonably fair approach, but I know that it's always a challenge to get people to pay for anything.
I hope it works out for you!
I'm this exact case you cover: it's a powerful developer tool that's very connected to the network & captures the traffic of many of your other apps & devices. It _must_ stay up to date, or users could be at serious risk. Holding back updates from users would be irresponsible. I've noted this in the past, but never really spelled this out fully, and it's important context, thanks!
For cases like ours, the upside of freemium over simple paid software though is that the end of the subscription doesn't completely shut down a user's life (unlike totally losing access to your IDE, or your cloud data), and you do need to ensure that. Instead the free user limits are put back into place, but those should generally make workflows inconvenient or less effective, and not catastrophically blocked.
In my case, for example, free users lose the ability to import/export collected traffic, but the exported HTTP traffic is in a standardized format anyway (HAR: http://www.softwareishard.com/blog/har-12-spec/). Some automated built-in tools go away too, but manual workarounds exist for free, for immediate & short use cases. Those fallbacks & that portability ensure nobody is ever totally locked up by the end of a subscription.
It's a very delicate balance (they need to be limited a bit, or nobody buys anything!) but it's been working well for me so far, and as a bootstrapped dev a free basic option is _incredibly_ useful as free marketing. Good luck with PhotoStructure - feel free to get in touch if you want to chat about any of this.
https://apps.apple.com/us/app/acorn-6-image-editor/id1233861...
- Users can pay a monthly subscription, and while they are subscribed they receive updates and have access to support
- Users can also purchase a lifetime license (cost is about 12-14 months of the monthly subscription) which includes lifetime updates
Initially I only had the lifetime pricing but I recently added the subscription, my reasoning was that by having the subscription:
- It assures potential buyers that product will still be maintained
- They can try the product for a fraction of the normal cost (eg. pay only $7.99 instead of $99, so the risk is a lot lower)
- They can have the option to support me and the development as long as they're using the product
After I added the monthly option (I actually show it as the default one), the sales are about 50%-50% for each option (monthly vs lifetime).
There are also buyers who "hack" the scheme by getting a subscription and cancelling within a month, so they get the product but won't get any updates or support. I did expect this to happen, but I think it is actually a good thing, as most people who do this wouldn't have purchased the lifetime version anyway.
I personally don't like the SaaS pricing in general, especially because it is so over-priced. As a solo developer I am having a hard time finding affordable services to use. For example I use GitBook to publish my docs, their pricing is reasonable at $8/user/month, only that it starts at 5 users and forces you to pay $40/month. I would have gladly paid the $8/month for my usage, but $40/month for hosting a single docs website is absurd. The biggest problem is the so-called subscription fatigue, when you reach one point where paying for all the subscrptions you need adds up to a huge monthly amount. Not only that, but you also get all those monthly invoices that you have to take care of and pay taxes on. Buying a product is so much easier, you pay once, one invoice, you can use it as much as you want without worying about data caps.
Since Nova is prioritizing web workflows, VSC is the elephant in the room and a very deadly competitor. It's free and open source, it's available on Windows, MacOS, Linux, and it can also be ported to the web. And it's Insanely popular and very high quality.
Meanwhile, all notable features Nova lists are default to VSC. One VSC feature that's been quite the remote lifesaver is shared sessions with voice chat.
Or at least, there's a loud one, and I guess they figured it's also a big-enough one...
Say what you will about Electron apps in general, but Microsoft has done a great job in making VS Code not feel like a typical Electron app.
Fwiw before getting internet fiber, a 95MB file resulted in about 20 min download (my reference was 300MB an hour).
That's not really a fair comparison I think. JetBrains IDEs do a lot more than VS Code. You'd have to load it up with plugins to make something resembling a fair comparison, and in that case I'd be very interested in how efficient VS Code still is.
Electron apps are bloated ick but I guess at least Electron is equally repulsive on all OSes.
Out in real life no one knows or cares about this
My hope is that they create enough momentum to force the VSCode team to rewrite in React Native.
Have been using SPM's "swift build" + some copy commands to create a fully functional signable bundle, no need even for an .xcodeproj.
You then need to create a folder with an .app extension, set up a simple folder structure, and add some necessities such as the Info.plist file and your resources like the app icon/images. And codesign or notarize depending on your deployment requirements.
Code completion works great for dev and I've found VSCode to be snappier than Xcode even if the underlying engine (SourceKit) is supposed to be the same. The only thing "missing" is not having Interface Builder, but probably most serious projects use code-generated UIs anyway. You could, of course, still make an .xib file in Xcode and use it in your VSCode project. (I don't have a MainMenu.xib myself.)
See: https://developer.apple.com/library/archive/documentation/Co...
What do you mean by that? If there was real demand for it, creating an iPad distribution for VS Code probably wouldn't be that difficult. It already runs great fully in a web browser.
It was a big undertaking :)
There has been interest in doing something to have VSCode in some way or shape on the iPad for a long time [0].
I see a lot of "you just need to" iPad on VSCode tricks that basically describe running a part of the UI locally and the rest hosted somewhere else (most fantastic setup I saw was to stick a RPi 0 on the side of the iPad connected through USB-C and VNC/SSH to it).
Codespacets is to me a variation of that, I'd want an actual node runtime powering a full native app with command line, native code execution etc. (a la Pythonista), and not just a reduced interface. I still prefer using Coda or Textastic for instance than coding in Safari.
I completely fault Apple for this, still doesn't change it looks like a dead end for now)
Seems reasonable, considering Panic’s last editor, Coda, has an iPad version.
People who care already edit Swift in their favorite editor and use Xcode for the rest of the dev iOS process. You'd be better off trying to capture the hearts of people so that you're their favorite editor than specializing to implement the "rest of the iOS dev process" on day 0.
As an iOS developer, I think most people start off disliking Xcode but then settle into a reluctant but productive relationship with it. The only things I need to use it for (device simulation, interface builder) are hard to build and yet they're not the things that annoy me about Xcode. Or rather, I wouldn't rather be wrestling with them on someone else's ultimately buggy attempt at reimplementing them.
Common misconception. VSC's most novel/valuable features are not open source. VSC is only "open core"; all of the real value-adds are proprietary and cannot legally be forked/reused.
> One VSC feature that's been quite the remote lifesaver is shared sessions with voice chat.
Like that one.
Second I bet there are more Web Developers out there than there are for Mac or iOS.
I've been using Atom for most of the decade (plus a bit of Sublime, and TextMate before), and I've loved being able to hack it to look and feel exactly how I want. There's a ton of custom CSS in my setup.
Now, Atom is slow. That is a daily frustration for me. The latency on every keypress is grating. I've stripped out every package I can, and that custom CSS I mentioned is mostly hiding things I don't want to see. But still, the lag! I feel it all around.
I tried switching to VS Code, but it was appreciably worse for me. I couldn't configure it to look as nice as Atom (and it had the unshakable feeling that it was made by folks from the Windows school of design — plenty of weird [to me] spacing and typographic choices). It also didn't feel any faster.
So why does Nova appeal to me? Well, Atom is no longer supported, so I'm going to have to switch to something anyway. Nova doesn't look as minimal as I'd like, but I can live with that — at least it looks nice! And it's a native app, so it should (in theory) be buttery smooth.
When it comes to a tool I will spend all day, every day in, $50/year is peanuts. This is my working life. It's worth spending a relatively tiny bit of money to have something nice instead of something good enough. Price is a non-issue for me.
As for extensions... I don't use any. I stripped them all out to try to make Atom faster. So now I get to discover what extensions are available, without being left longing for something I had to give up. Maybe I'll build an extension for myself. This is a new frontier for me.
So we'll see. I tried Coda, didn't like it. I love Transmit, though. So if this tool lives up to its promises, and succeeds on its own terms, I'll be thrilled. For the folks happy with VS Code... that's fantastic. I'm glad you have found a tool you like. For folks like me, for whom VS Code just felt off, this seems like a great option.
There are certainly drawbacks but running everything on the cloud allows me to code on a lightweight machine like MacBook Air or Microsoft Surface with extended battery life regardless of the workload. It also keeps the machine cool and silent.
TL;DR: I cope, begrudgingly.
If you were to suddenly change 1/3 of the applications on Linux to use Mac style shortcuts, it would make usability worse.
May I ask what computer are you using? I would say VS Code runs 'buttery smooth' on my macs. Is this a case of me having no idea of what I'm missing?
I assume the culprit is half baked language extensions. I love vscode for typescript but I’d happily switch which editor I use for rust and C if I find something better.
In comparison, programming Swift in XCode lags so much sometimes that it starts missing keystrokes, and I end up with variable names that are missing half their letters. (This happens particularly when filling in a function's arguments). Its terrible, and it leaves me second guessing the idea that native editors are superior by default. This seems to me like a much more useful target for a new IDE.
The perf I'm taking about is just purely motion to photon, with a plain text file.
I'm a musician, animator, and gamer — and I read Dan Luu's blog posts, haha — so I'm quite sensitive to input lag.
Is there an official source or announcement for this? I've noticed that recent release notes and changelogs have become much less substantial, but I've yet to see anything indicating that it's approaching EOL.
I haven’t really looked back, except that Atom had better git support in its native UI.
Really what I miss is 2015-2018 Atom, but it seems like its time has gone.
But I don't like how Sublime looks. It doesn't look designed to me — it just looks like an accretion of features placed around the window. To me, that matters a lot. That is, after all, why I'm a Mac user. Why I'm fond of indie Mac software.
> It doesn't look designed to me — it just looks like an accretion of features placed around
isn’t a lot of programming like (despite our best efforts)?
Honestly this isn't possible. VSC had better perf than Atom 4 years ago[1]. I say this as a long-time Sublime user, which is best-in-class[2] when it comes to perf.
> I've loved being able to hack it to look and feel exactly as I want
What is not customizable in VSC? When I first started using VSC, I installed an extension that made all my keybindings exactly as they were in Sublime, then I installed extensions to make it look almost exactly as my Sublime setup had looked (just took installing a UI theme and a color scheme).
If you want buttery smooth, Sublime is where to go. Native doesn't compete with Sublime's low-level text rendering.
But seriously there must be something wrong with your setup if VSC is lacking in perf and Atom wasn't.
[1] https://blog.xinhong.me/post/sublime-text-vs-vscode-vs-atom-...
[2] https://www.youtube.com/watch?v=_mZOzyzlsww&feature=youtu.be
I switched from Atom to VScode, precisely because VScode felt so much snapier.
Because of the wealth of extensions available for VS Code.
An editor is only as good as the number of developer-hours that has gone into writing extensions for it.
Is one planned, maybe?
TBH the only feature I truly use JetBrains for is their Cmd+Click to jump to definition, otherwise I'd be happy sticking with tmux+vim as IDE (as I did for about a decade).
I suspect the reason a lot of people don't seem to refactor their code is because they would have to do so semi-manually with whatever hip-but-feature-bereft editor they've sworn allegiance to.
Neovim is also going to add native LSP support as well as tree-sitter in their 5.0 release, it's already available in nightly builds.
The most straightforward option is probably coc.nvim, which tries to give a similar experience to VS Code out of the box.
https://github.com/neoclide/coc.nvim https://github.com/prabirshrestha/vim-lsp https://github.com/neovim/nvim-lspconfig https://github.com/neovim/neovim
There's probably a similar shortcut in their other IDEs (try right-click > Go To > Declaration or Usages and note the key combination listed next to it).
Maybe this part will help:
"We have easily customizable key bindings"
I don't know if they can be customized to match Vim, but it might be too soon to write Nova off.
You have two lines and want to swap them? ddp – that's it. 3 key presses. You have a string on the same line as your cursor and need to replace it? ci" – also 3 key presses (Change Inside "Quote).
No editor has configurable key bindings that can do this.
There are tons of tutorials online; this one seems to explain things pretty well: https://takac.github.io/2013/01/30/vim-grammar/
As a TypeScript developer, if someone made me choose between paying $99 for the actually-free VS Code, or buy Nova, I would by VS Code without hesitation.
Before it began getting long in the tooth I was a big Coda fan. On the whole I like VS Code but I do suffer the occasional runaway process so I am open-minded to a new editor from Panic.
Nova is faster than VS Code, but barely. I like the default rainbow indentation, though I'm sure there's a VSC plugin for that. The contextual spell-checking is excellent and I know it's a better experience than any VSC plugin.
But this thing can't even auto-format a comment block. You can't set format-specific options (so for instance no line-wrapping on only Markdown/MDX files).
The default editing experience is lightweight, and that's a good thing. But the plugin story is dire. Plugins like ESLint and Prettier crash constantly, requiring an app restart. Prettier has a format-on-save behaviour that seems to format after save on some file types. Typescript cmd-click definitions are broken, cmd-click import filepaths are broken.
It's not a bad effort but it speaks to how much ground they have to cover to get within the same galaxy as the VS Code experience. I genuinely think it'll be years before they can charge for this with a straight face.
I am not sure if I am pessimistic enough to call that "years" once they've got that migration path planned. If they're not planning something like it, though, then I think I agree with you.
It's a really high quality protocol, and supporting it gets you 95% of the way to supporting dozens of languages (only remaining work is coordinating launching the language server and connecting it to the editor, usually <100 lines of code).
Languages are important, but I wouldn’t say they are ahead by a large degree.
This is all fair. I've been using the beta on and off, and so far it hasn't compelled me to switch from VS Code yet. But this is a 1.0, and Panic has a pretty great stellar track record — I can see them closing the gap pretty quickly.
I use IDEA and feel absolutely crippled and useless in vi. It's largely because I never use vi and don't care to learn it. I'm very impressed with the IDEA tooling. There's a vi plugin for it if you want to get a head start.
As far as IDEs go, I’ll give it 4 stars, but it still pales in comparison to writing VIM macros on the fly, jump-to movement keys, setting and jumping back to markers, being able to select lines in visual mode, pipe them out to any process I want and pipe the results back into my buffer, etc.
Running build tasks via clumsily configured toolbar buttons is absolutely horrid in comparison to make or any other CLI-driven build system that I’ve used (except maybe all the JS ones).
Whereas if you have things locally the tooling assumes that you are developing for the local machine. There are obviously some ways to fix that - e.g. by pointing to a remote sysroot and overriding flags - but it's not a very straightforward process.
This part of your comments nails 100% why, for me (web developer, 90% in typescript these days), it's nearly impossible to justify paying for an IDE.
Visual Studio code has almost everything that I need, and what it's not baked in, is easily done with a plug-in, which in the worst case I can write myself. But that's really a worst case scenario, since to this date it has never materialized as all my needs are covered by existing, and excellent, plugins.
The plugin/extension experience between emacs and vscode is, of course, almost an apples to oranges comparison. But VSCode is much better in that regard in my opinion.
I want yak-free IDE. After ten years my Emacs config is a herd of beautifully shaved yaks. VSCode is yak-free, for me, right now.
The irony is that this has driven me to try emacs. I am being driven nearly to distraction by the fact that every single operation seems to almost glory in using a different key combination than any other editor I've ever used. Even TAB can't be used for indentation because emacs is "opinionated" (or, as I prefer to call it, "a twat") about it in most modes, but you can get what you want with M-i.
The thing it absolutely seems to nail is performance. I'm getting zero CPU thrashing on the same project, and auto-complete-mode, whilst not quite as good as VSCode's autocomplete, is much better than Sublime's. For one thing it seems to work well across files, even when using ES5 with no typing hints.
The payoff in a cooler laptop and longer battery life is worth the sometimes seething frustration in the meantime.
(Of course, at the moment I'm squandering most of that extra battery life looking up keyboard shortcuts, but that will pass.)
Speaking of ironic, yeah. Emacs used to be the massive resource hog, compared to it's competition (BSD vi?) back in the day -- the joke was that EMACS stood for "eight megs and constantly swapping", back when 8MB of RAM was a lot. It's just that, after that, they failed to keep up with Wirth's law.
One would imagine that most CPU load because of rescanning would happen in the language server, and those should be the same between VS Code and Emacs.
Emacs 27 (released recently) with native JSON support was reportedly a huge improvement.
The `native-comp` branch on master is receiving great feedback too.
It really depends on you wanting to use something like Emacs, of course.
The text editor in VSCode is better than VS (multi cursor support isnt great in VS). I would love to see VSCode get the smart refactor features from Visual Studio, working with Typescript.
I’m flipping between Jetbrains and VS code a bit, but Jetbrains is by far the superior experience.
If you're going to roll Jetbrains then the more RAM the better and a good CPU also helps.
Obviously, this means MacBooks that aren't fully kitted out are bad picks.
In my experience, the lazy autocomplete takes less resources at start but the result is that autocomplete suggestions are loaded in as files are being parsed. The larger projects grow, the slower this process is.
I suppose slower CPUs like the i3 series and low i5 series Intel chips will probably have a lot of trouble with the indexing. You need a laptop with a decent sustained core speed to do the work (which can be a major deal breaker in cheap Windows laptops and the lower tier Macbooks), but the few seconds wait you get on a professional machine when a project gets loaded in is well worth the wait to me.
Shitting on tools because you read a couple disgruntled comments about indexing without honestly evaluating the tool yourself says a lot.
VS has now mostly caught up with their feature set, and the only thing I miss is namespace refactoring (which I could implement myself with Roslyn.)
Is R# just an exception, perf-wise, to their track record?
The reason I pay for IntelliJ IDEA is exactly the fact that I don't have to install any plugins, or fiddle with config settings, or really do much of anything; the product works extremely well out of the box with all of the IDE features I would ever want (and then some). The last time I seriously tried VS Code[0], I felt like I was constantly trying different plugins and changing various settings in order to get it working the way I want, and many of them weren't quite as polished as what I get immediately with IntelliJ.
[0]: Admittedly, this was over a year ago, so it's possible things have improved. But I'd rather pay $89/year than spend the time to find out.
Some of them are for minor customization like hot keys to move tabs. But the product doesn’t support Environment Variable configuration very well.
For example, Pycharm can’t injest a .env file. The devs point at a plug-in, but that doesn’t cover runtime and terminal / python shell.
I've enjoyed it for years now! https://marketplace.visualstudio.com/items?itemName=oderwat....
Well, I payed for it a few days ago, and I don’t remember seeing any crooked faces. I very much enjoy it so far. Considering the scope of the project and the high quality of the design in every nook and cranny of the app, I think it’s a bit of a miracle that something like it even exists. Not even Apple makes Mac apps of this caliber anymore.
I agree that the competition they’re up against is fierce, but criticizing a 1.0 for a few hiccups and a small ecosystem seems misguided. They are offering something no one else is.
Update: looks like if you context click on a path > Typescript > Goto definition works; Weird that it is not unified with the editor's concept of goto def though.
Agree with parent that it's a valiant effort, just way too immature w/ no compelling features over VSCode at this point.
Edit: Native editor is compelling for battery, but not at the expense of developer experience - and even then, it's been quite a while since VSCode has felt slow to me.
Nova is a great editor but the hard thing is taking a step back and realizing that Microsoft has clearly designed VS Code to be the Typescript Dev tool in the same way that XCode is the Swift/SwiftUI development tool.
The leaps and bounds in features JUST for TS is incredibly hard to replicate mostly because it’s almost Microsoft’s exclusive goal with VSCode development.
I imagine if one doesn’t work in TS that Nova is far more competitive, it is not a bad IDE at all when judged on what IDEs prior to VSCode meant.
I’m not sure there’s enough of a market on the Mac for another commercial code editor, as we already have BBEdit for hard-core text wrangling. (And obviously all the open-source options.)
Most devs that do _not_ make native apple apps (e.g. web devs) do not need a Mac, so the market of devs that do not use xcode, that prefer a Mac and that are willing to pay for a proprietary solution, over other proprietary solutions, is likely not that big.
I think you underestimate how many developers are willing to pay for their tools proprietary or not. We know better than most how difficult it is to make software and so I think as a group are more willing to support each other financially.
As another datapoint, I seem to remember IntelliJ doing >100 Million € in revenue p.a.
That's going to be my issue with Nova, I think -- well, already is, as I've been beta-testing it. (I even have a theme in Nova's extension gallery!) There are a few things specifically relating to text manipulation rather than coding that BBEdit just does super well for me, and when I want a more IDE-like experience I end up in VSCode. Nova has foundation to be a great competitor in this space if and only if their extension library gets built out quickly, but that's, well, going to be a challenge. I'm still giving them a year of support to see what happens, though.
What’s your experience with the theming engine? I use Hugo for my static site generator, and I doubt there’s a theme for that particular flavor yet. (I severely doubt my ability to craft a theme, regardless of how easy it is, but I am tempted.)
Do people actually find the Minimap useful for coding? If so, how? And why is it better/different than just a scrollbar, or searching?
I've always thought of Minimaps as a thing that seems like it should be adding something to the interface, but actually isn't at all. Seems like pointless eye-candy, to me.
What am I missing?
But as you said, can get the same in the scroll bar.
Like, if I have a big file that has a class somewhere, and I know I took a bunch of notes on it, I can scan the minimap for the big block of green comment text, and click that section to jump directly to it.
Regardless, I'm not really short on horizontal space in a world where monitors are huge and 80-character lines are still the norm, so it costs little to keep it there.
> It's new, hyper-fast, and flexible, with all the features you want: smart autocomplete, multiple cursors, a Minimap, editor overscroll, tag pairs and brackets, and way, way more.
It made the scrollbar a literal screenshot of the code.
Basically we are all going to be waiting for the ‘And now Nova can import all your VSCode stuff seamlessly’.
That said, because of how fragmented the ecosystem is, it is difficult for me to jump in. For example, my main side project right now is a Vue app that uses SCSS syntax in components, which the Vue extension for Nova does not yet support. This might sound like a small detail, but it's a total dealbreaker - and while, if this was a totally open source editor, I might be interested in contributing to the extension, I can't say that I'm interested in paying $100 and then helping out. It's a very difficult chicken and egg situation.
ps. just found out they're the devs of Untitled Goose Game and Firewatch nice nice
Turns out that browsers have gotten somewhat good at rendering formatted text ;).
But yes, a deep dive into the exact rendering pipelines would be quite interesting.
The starfield background also moves based on your cursor position, dang.
And the fact it's smooth-as-butter without even getting my laptop fan to turn on at all is even more impressive.
Also: P3 colors all over :) the Nova logo burns my eyes nicely on the Ultrafine 5K's :) color(display-p3 1 .012 .29 / 1) learn something new every day.
The site reminds me of early Panic work which was also pushing the web envelope forward in tiny attentive details.
At that price am I getting much more than the satisfying feeling of supporting Panic?
I have VSCode and SublimeText both running all day. VSCode competes with Nova, not as much SublimeText. If your priority is beautiful Mac apps, at perhaps the cost of the more mature plugin/code support from VSCode, then maybe Nova speaks to you. If you are just slamming through tons and tons of text files, and just need a really high-performance text file tool - SublimeText beats out both of them.
Having said that, a lot of software developers -- including Panic -- have not had great experiences trying to sell development tools on iOS. It feels like there should be a big enough market for this, but it's unclear there's actually much of one. If Apple brought Xcode to iPadOS it would likely require changes to the OS to support that kind of development toolchain, and that would make it easier for other companies to bring their tools, both commercial and free. But I half-suspect the official Apple answer to "when are you gonna let us develop on iPadOS" will be "may we interest you in this Apple Silicon-based, touch screen MacBook that natively runs iPad apps."
If I could Handoff something like a shallow clone of a git repo and its working index between iPad and mac, I'd be in love.
The iPad is a computer with a keyboard and mouse and a full-featured web browser. There are also language-specific native IDEs like Pythonista and Play.js. There are Git clients available natively as well. Pretty much the only thing you can’t do is make iPad apps on the iPad, which is a pretty small subset of programmers. Pythonista costs $10 and has nearly 1k reviews, so someone must be using it.
So why do people constantly ask “does anyone really want to develop on a computer that offers many development options?” The answer is yes, of course people seriously want to develop on an iPad.
1: https://marketplace.visualstudio.com/items?itemName=asvetlia... 2: https://www.onivim.io/
quickly looking at the docs, I see no support for keybinds without modifier keys or changing cursor shape, both of which are essential for decent vim emulation.
I am no vim ninja, but nor am I a vim novice. I can use it to write new utility scripts on remote servers, or updating existing files. However, when it comes to long coding sessions with multiple files in the package, I do enjoy a good UI with tabs and drag-n-drop.
setxkbmap -option caps:swapescape
inoremap kj <esc>Also, because of the strong typing, the IDE knows which method is called where, and could thus support refactoring really well.
So if I wanted to change the name of the "save" method in one tree of 87 derived classes, but not the other 532 classes that also had a "save" method, then the IDE made that very easy. Of course, it changed the callers, too!
Subscriptions for non-service-based apps are terrible for customers, while major version upgrades make it hard for developers to plan around a steady revenue stream. Up-to-date models, as Panic has implemented with Nova, offer the best of both, with perpetual licenses for customers and a regular income stream for developers.
I'm probably not the target audience for this. I'm much too happy with Emacs.
There is a "preliminary alpha" Go extension for example, but there is first-class support for... FTP.
It took me a few minutes to notice the magical sometimes-visible "download" link but now I have the trial, and I hope it's as useful as it is pretty!
It’s the huge blue button right in the middle of the page that reads “Download Nova for free.” They couldn’t make it more obvious unless the forced an auto-download.
Clearly my bad, looking at it now obviously it's a prominent call to action.
Perhaps they should have started by targeting something other than web development.
These days, web development got both more mature, complicated, and simpler, all in ways that makes it hard for Nova to make sense.
> These days, web development got both more mature,
> complicated, and simpler
"Mature" and "simpler" do not belong there.For different reasons, I use VS Code (pretty, JS stuff), Sublime (fast), IntelliJ(rust) and a SQL Tool(sql!) at the same time.
I like the idea of coda of being more IDEish with transmission and ssh built-in, but one thing that no editor I have use is good at, is to see logs, sql and CVS/JSON data.
In the case of CVS/json, I kill for a way to turn it in auto-datatable with built-in search (do a lot of tabular data manipulation).
So, then after use sublime to load stuff, need ALSO to open excel OR numbers (which one open this CVS file is a gamble) do the edits there, then go back....
Is there some reason that text macros aren't a built-in feature more often? I spent a lot of years using the very simple PFE on Windows because it had text macros and code snippets / templates. VS Code doesn't have them and neither does this one. Do people not find this useful or at least useful? I guess I do a lot of data munging with coding.
But I'll still use VS Code cause I work on a Mac and on Linux and it's nice for it to just be the same. And I have no complaints to solve with VS Code. It does exactly what I need for Python and other stuff.
That said, I'll never use a toolchain that isn't free software. These are my work tools, into which I invest decades of muscle memory and configuration. Between Apple's lack of emphasis on long term application BC, and their increasingly locked down hardware (and I type this on an iMac Pro with T2 and firmware security on), I just can't invest my time and energy into the most critical of my development tools (an editor) that isn't going to come with me to any platform or device that I ever end up using, or, more importantly, be hackable.
It's sort of like fire insurance. I hope to never, ever need to use it (recompile my editor with a change), but the idea of having some of my most valuable resources/investments at risk, with no recourse should the worst happen, is insane to me.
> Can a native Mac code editor really be that much better?
I honestly thought that this must be a fork of Text Wrangler.
Footnote: Text Wrangler was merged into BBEdit and this was superficially complicated enough that I never made the switch. I think this is an I promise the problem is with me situation.
It looks like a wonderful product for someone who is dead set locked into Apple eco system.
This is a text editor, not a service that you might reasonably access from multiple platforms (like 1Pass).
This was the first thing I looked for on their feature page!
Moreover, I'm getting tired of VS Code's slowness and quirks, so switching back to something from Panic would be great. If it crashes less often than VS Code, it's half way there.
For those who don't know, Panic is well known for decades for making incredibly high-quality software. It's not a big, flashy SV startup, but a small team in Portland that emphasizes quality over quantity.
Also important: Panic takes purchase orders, which is the only way the company I work for will buy software. A multi-billion dollar company where only the C-levels have credit cards. Panic bent over backwards to sell us several products.
Other than the Cocoa UI what feature did it introduce?
> Panic is well known for decades for making incredibly high-quality software
They make great UIs that for sure, but other than that I wouldn't consider them a great software company.
Transmit 4 is one of the slowest FTP clients I've ever used. [0]
Coda 1 and 2 were extremely slow. I remember years ago a coworker had to wait a minute or more to be able to open a medium sized file while Sublime chew it in a second or two.
Transmit 5 has been out for more than three years.
It already starts with the editor itself, which has only one word wrapping mode (the other mode is horizontal scrolling), where it will wrap the lines at pretty arbitrary locations due to its desire to implement "word" wrapping, instead of also offering a simple mode which simply breaks the current work :-(
If basic editting does not fit my style, it is a no go no matter what other niceties it might have, once the extension stuff starts going for real.
I'm going to assume they support .tmLanguage, because it's the de facto standard.
Do they support .sublime-syntax? If they do, I'm interested, if not, well, I'd circle back if they add it, but lack of support is a deal-breaker for my use case.
More generally, it's a great splash page, but it doesn't appear to link into extensive documentation, and that's not a good sign. Should be right there on the top bar. This is a tool I'd spend hours of my life a day in, and every text editor in existence is an immensely complex beast which requires good documentation.
I'll be following the development of this, but for now I'm not playing with it much further.
> Prettier couldn't be found because npm isn't available. Please make sure you have Node installed. If you've only installed Node through NVM, you'll need to change your shell configuration to work with Nova. See https://library.panic.com/nova/environment-variables/
Unfortunately the documentation is for zsh and bash only. Has anyone an idea how to get this up and running with any other shell?
I opened up Nova and first installed HCL (language support for HashiCorp's Terraform and Packer). Then I looked for Shellcheck[1] validator, but was disappointed it did not exist. Then I search for Kubernetes and Helm wondering if there were any specific extensions, but no results. Next up was installing Dockerfile and ENV syntax highlighting.
Overall still tinkering around, but Nova seems very promising.
I used to love Coda back in the late 00s, especially for its live CSS mode (not so revolutionary today with this built into every browser these days), and would happily give Nova a try if they support a decent vim-emulation mode, but without it’s a non starter for me. These days I feel heavily handicapped without it, just recently some tool dropped me into nano and I felt like a child adding random characters to various places in the document while trying to force myself to navigate the text correctly, muscle memory is a strange beast.
> native Mac code editor
Looks much more native and likely faster than electron based editors like vscode or Atom.
[1] https://developer.apple.com/design/human-interface-guideline...
The animation is really cool especially that onscroll effect!
Fair enough - a good diff view has a lot of subtleties.
One of the things i love about IntelliJ is having access to most of the normal editing tools in the diff view. If i'm reviewing my changes for a commit and i realise a method name could be improved, i can refactor-rename it right there. For some reason, possibly just keybindings, i can't use the broader set of refactorings (extract, inline, etc) in the diff, and i wish i could use those too. The diff could potentially be my main interface for programming.
Kaleidoscope is fairly close but you still can't merge individual lines from a block of changes, and you can't make up for it with manual free-form editing of the text. Sometimes I want to perform the merge by copying and pasting segments myself. Sometimes I want to fix up indentation after merging.
https://twitter.com/kaleidoscopeapp/status/34193087090041651...
(But you can when dealing with merge conflicts? Wow. Quite remarkable for a seemingly basic bit of core functionality to stay humming on the to-do list for seven years, despite the very same feature already implemented in a nearly identical context!)
The state of the IDE landscape on Mac amazes me. It seems like there a $#!*-ton of Java/C++ developers using standard-issue MacBooks at Big Corp, Inc. who are staring at ugly IntelliJ windows for eight hours a day.
If there was a native-feeling, good-looking IDE for the Mac I can’t imagine why it wouldn’t print money. (Or if XCode ever decided to branch out beyond honest-to-goodness support for things other than Objective-C and Swift...)
Very Panic-y.
I'm surprised that they didn't use Cmd-P, using Cmd-Shift-O instead.
What's the precedent for it? I thought Cmd-P was now universally used to locate files. Do Mac apps like Xcode use Cmd-Shift-O instead?
I kind of wish they went all in on LSP and made their extension API via additional JSON RPC methods on top of the base protocol. Because that's what extension authors are using to share code between an extension/editor, LSP is the only thing somewhat consistent and the client surface area is tiny.
Coda was baller. But I don't need it anymore.
I think I'll go ahead and buy Nova to check it out and support them. But VS Code does everything I need and I have no complaints about it. Plus I can use the same editor on my Mac and on my Linux desktops.
I find it interesting they're getting into this space, but more power to them.
I'm surprised it has no support for bash, or any other kind of shell scripting.
Meanwhile, the only thing that keeps me from using my iPad Pro full-time is the lack of a serious text editor and terminal.
I too would like to use my iPad Pro for work stuff, but I would say the thing standing in my way is Apple.
I just pushed a theme for Nova called "Hivacruz", the same I created for other applications. Hope it will please some developers.
It is a nice piece of software. Props to Panic.
This is not meant to put down the product—I've bought and enjoyed multiple Panic products in the past.
The transition is made hard because of the odd default key mappings (they hotkey editor is very difficult to use. I went back and forward and couldn't understand why my mappings weren't working only to find that it was due to having to use the hotkey editor in a specific way). I really think a good keymapping is the first hurdle people have to overcome, so shipping it with an hotkey extension for Sublime, VSCode, etc. would be a big win off the line.
The autocomplete and jump to definition seemed to work well. I had a hard time figuring out if "Find references" were working. It kept telling me to go to some obscure tab or place somewhere but since it's all symbols, I don't know where to actually go. VSCode is easy by comparison - a "peek" window shows up prioritized references.
However, Nova is a no-go for me because it simply stalls when opening a >2 MB JSON files. Forget about trying to search-replace - it's simply too slow. In defense of Nova, Sublime also can't deal with it.
My impression going away from Nova is: It's like Xcode and VSCode had a baby. Perhaps with time it'll improve in performance and be fine tuned to a point where I can use it daily - but given it's primarily paid (not "free with nag screen" like sublime), I can't review it any time soon again.
Thank you for your detailed review, greatly appreciated!
Given that it starts with the huge handicaps of being proprietary and commercial, requiring a proprietary OS with very limited hardware support, and having far less extensions than VSCodium, it seems very unlikely it can compete.
There is a class of tech workers who find apps like this and then stop exploring. As a result, they become marginally effective using Panic's oversimplified workflows, and then stop exploring. I'm thinking in particular of Coda's remote editing - and wouldn't you know it, remote file browser is a promoted feature of Nova too! Built-in diffing is "on their list".
So I naturally assume that anyone who uses Panic's apps is incompatible with any project I'd be working on; because they're going to try to educate me on how much simpler and faster remote editing is than using a VCS. (Edit: and it's not their fault, it's Panic's fault, for trying to make money off text editors for people who are afraid of the command line.)
"IC 009. US 021 023 026 036 038. G & S: Downloadable web site development software; Downloadable computer software development tools"
I guess the trademark it's very specific and not in conflict with let's say a model of a car. But also other companies can challenge the trademark later if they deem it in conflict with theirs.
Take a glance at https://old.reddit.com/r/macgaming/
(full list: CoffeeScript, CSS, Diff, ERB, Haml, HTML, INI, JavaScript, JSON, JSX, Less, Lua, Markdown, Perl, PHP, Python, Ruby, Sass, SCSS, Smarty, SQL, TSX, TypeScript, XML, and YAML)
Looks good.
On Safari, anyway; on Chrome, it's very jittery.
- no vertical tabs (ditto for vscode though);
- no diff, unless I'm missing it;
I try to live without vertical tabs, but missing diffing is a show stopper.
It’s time someone built a good macOS-native editor. There are already plenty of non-native solutions out there.
The developers in my team work on a mix of MacOS, Linux, and Windows.
In the face of VSC, a MacOS-exclusive app simply does not compete.
What year is this. :)
Other editors I use (intellij idea, vs code) don't do this.
Hopefully it is something minor.
The only custom controls I see are the tabs, tab bar, and a few modals (like when opening a new tab), and a handful of buttons and segmented controls in the sidebar. Everything else is native, unmodified Cocoa controls: NSWindow, preference window and its contained controls, the sidebar, etc.
I actually am a bit curious about the decision to have those NSButtons with custom backgrounds … they don't really look right both on Catalina or Big Sur. Native-looking NSButtons are used everywhere else, though.
> the entire window frame
About the only thing that looks unusual here is the custom buttons at the top-left with the diagonal lines. No more custom than Xcode, iTunes.
If the problem is that the toolbar seems to be in the titlebar, that's been an accepted, Cocoa-supported window style for a long time — and much more prevalent in Big Sur.
It has the correct translucency behaviour in Big Sur. Maybe one day they'll update it to use Big Sur-style full-height sidebars.
> It looks, to me, like an Electron or RN "app"
Electron and React Native apps wish they could integrate with Cocoa as well as this.
Those never look like anything more than a plain NSWindow with a plain, thin titlebar with a web view inside — or worse, not even an NSWindow but one painted with custom controls.
I don't think that macOS has anything special today.
Unless you have separate code base for each.
“You weren’t randomly chosen for the Nova Private beta”
“After six months, our Nova Private Beta is gradually drawing to a close. Unfortunately, we had far more people apply to test than we could reasonably accept as testers.
We’re sorry to report that you were not randomly chosen for testing this time.”
“We have chosen to go with another beta tester that better aligns with our needs at this time”.