Adobe XD for Visual Studio Code
letsxd.com
letsxd.com
Having a UI component library where you can get a visual preview of what the element looks like while you key up/down through autocomplete options seems drastic for development velocity.
What can't you do with VSCode these days? I hope we continue to see a trend of innovative IDE features like this.
Run it on a machine with less than 8GB of RAM.
With only some Typescript/LESS/Node/Linting/Live Reload extensions, VSCode is sitting at 70 Mo right now. I think Microsoft did a great job with it. My machine can barely run Android Studio or Webstorm on the other hand, unless I turn off code inspection.
A lot of programmers think investing in hardware is stupid, because they think "if it was just coded more efficiently, I wouldn't have to".
If my car can't pull a trailer that's too heavy, I can complain that the trailer is too heavy and spend way too much time hauling stuff. Or I can buy a car that's better suited for the job and do more work in one day.
That's a stupid analogy of course, because a machine with 32Gb of RAM often costs less than what you make in a week. Stop complaining, just deal with it.
It seems this kind of tooling had gone out of favor over the years, in exchange for only using code. It seems like there are some cycles in which people rethink how much a visual preview is worth to them.
If I were to make a guess, IDEs are coming back into favor for a couple reasons (the balance of how much each contributes being debatable):
- VSCode, and to a lesser extent the Jetbrains suite of IDEs, are showing that you can have an IDE and it still be reasonably fast. That’s in stark difference to the old Eclipse days as one example.
- Developer machines continue to get faster and have more RAM, yet most of the dev tools ecosystem seems to poorly take advantage of that. Compare the memory and processor usage of Slack (which arguable has a simpler task) with VSCode, which both use the same underlying platform (Electron). By so many apps setting such a low bar, it further enhances the view that VSCode is fast.
- our codebases continue to grow in size, have yet more dependencies, and yet more moving parts. Things like code completion / doc bubbles / etc are becoming more important as there’s just to much bloat for an average developer to keep in their “active memory”
- similar to the above point, our languages keep evolving constantly adding new things, making it harder to stay on top of all the new functionality, but the modern breed of IDEs can help there in a number of ways.
- we have a had a big wave of new developers start working over the past 15 years and some of them had NIH for things from the past, and now has reinvented what existed before, in someways better, in some ways worse.
I can think of more possible factors, but this is an already long post and I’m sure the ones I posted already will get debated as is.
Now that Node and Webpack take absolutely forever (relatively speaking) to get your JS2020/React/Redux/Bootstrap/SCSS app recompiled after a modification, being able to write the correct thing once and not have to wait a minute to have confidence in it is hugely valuable. Get the REPL time down to a second, and IDEs aren't terribly valuable anymore.
I didn't see that. Was that on the VSCode extension page?
Will this Adobe XD update broaden the usage of the app? Only time will tell. It's nice to see alternatives to Adobe apps though.
It does appear that Adobe is in the unusual position of playing catch-up in this field for once. (Another example of Adobe catching-up is on the iPad where Procreate has leapt over Adobe to dominate the digital painting app space.)
Figma for example is a more complete solution if that's the only design tool you gonna use, it has a good pen tool and even blend modes for images.
XD shines when used together with their other apps. Figma isn't much cheaper than a CC subscription when you also add services/tools for commercial fonts, mockups, video, stock graphics and 3D on top.
I can certainly believe this. For a long time, Illustrator only had the option to create a single artboard (page). I'm convinced it was partly due to the overlap with InDesign. If you wanted to create a short document or leaflet, Illustrator would be fine for the purpose - but obviously not if you could only export a single page. Users were clamouring for multiple pages/artboards and Adobe finally introduced the feature in Illustrator CS4 in 2008. (There were over 12 versions of Illustrator prior to this.)
This really is the main thing that any competitor to Emacs needs to have, in my view, much more so than the prehistoric keybindings, devoted fanbase, wide range of addons, and nasty extension language. (VSCode has 3 out of 4 here anyway.) Without it, VSCode is much more just Visual Studio with Javascript instead of C++.
[0] https://code.visualstudio.com/updates/v1_50#_webview-views
Thankfully there are now many cheaper and better alternatives to buy from.
For really simple things you can also use Hitfilm Pro
There is also https://natrongithub.github.io/ but I haven't personally tried it
His examples tend to be specific to VFX, but Blender is quite general-purpose as far as motion design goes with an NLE, support for the familiar “expressions” paradigm, and so on.
I mean, can you code procedural FX with Python in After Effects? You can in Blender. And it's free.
2.90 is shockingly good.
And yes, another reason I have lost faith in Adobe as a company is them bailing on Fireworks. Maybe because it was a Macromedia product originally. It seems every Macromedia product has been abandoned/neglected by Adobe.
Once Adobe realized they're competing with piracy the same way the music industry was, oops, all of a sudden there are profits to be made from simply charging a fair price.
Who woulda thunk it.
They get more money out of us, for a lesser product, that we have even less control of.
I'm unsure how pricing compares.
Figma doesn't support the design capabilities for native app design, so no real alternative.
Where is then the alternative?
Figma of course runs in a browser so works fine on all, and there is a Mobile UI toolkit for it: https://www.figma.com/templates/mobile-ui-kit/
https://www.smashingmagazine.com/2019/04/sketch-figma-adobe-...
https://www.codeinwp.com/blog/figma-vs-sketch-vs-adobe-xd/
But maybe what you need is... Adobe XD? I personally quite like it.
Axure RP? https://www.axure.com/
I found Figma quite well-engineered, though I’ve only used it in its website incarnation.
What's also nice is that you can create color themes in their Color/Kuler web app and then have those themes available to pick from within XD, or that you can open and work on images and scenes in Photoshop or Dimension (their V-Ray based 3D app which is cool for Hero scenes).
Best use both, Figma is better for web apps (XD doesn't even have inset shadows for forms), and XD is a bit better for landing and marketing pages, especially if you use their other tools.
We're also hopeful browsers will expose an API for accessing a list of local fonts / font metrics with the user's permission. (It's a fingerprinting issue to expose this info without the user opting in which is why browsers haven't built something like this in past.) This is gaining traction on the Chrome team, which is really exciting! https://bugs.chromium.org/p/chromium/issues/detail?id=535764...
https://help.figma.com/hc/en-us/articles/360039956894-Use-Lo...
https://help.figma.com/hc/en-us/articles/360039956774-Manage...
Have you thought about integrations with popular (among typographers) services like Fontstand, or smaller ones like Fontown? This could be a gamer changer. I really want Figma to become a real alternative to Adobe, not only for UI stuff!
Adobe's font control is simply dystopian. Many hours wasted debugging why a font was having issues _only_ in Adobe products, but not in other software (like Word).
Sketch is sketch. They invented this market and everything is basic a rip on it. Mac only, but that’s generally UX designers anyways.
It is very notable that XD is used by very few major companies. The industry leading firms overwhelmingly use Sketch or Figma or both.
That is very important in development or plugins. There is just so, much, more.
Sketch did not invent anything, similar tools were already available on the 90's.
If industry you mean Web designers using Macs around Silicon Valley coffee shops then maybe you're right.
You can certainly do good design on Windows, but there's no chance 90% of professional UI designers here are using Windows. And for user interface design Sketch is absolutelythe standard these days. I'd love to hear what similar tools were available in the 90s.
As for the 90's examples, I am a bit far away from my Computer Shopper UK edition to go dig out names.
This is like saying Facebook didn't invent anything because it came after Friendster.
It does have features like symbols that are essential for any UI design app (a symbol is a visual component that can be repeated throughout a design; editing one instance updates all instances).
However, the Affinity Designer audience skews more towards illustration and my impression is it isn't used as much for UI design even though it has very capable tools to accomplish this. This means fewer tutorials and a small community using it solely for UI design.
Here's an example tutorial on creating a mobile app UI using Affinity Design that shows what can be done in the app:
But...you can use PowerPoint or Keynote for creating simple clickable prototypes that can be very effective. For example: https://keynotopia.com/
If you work in a large company where you need to maintain Design Systems and you frequently collaborate across teams (think different OSes), Figma would be more helpful for everyone. Especially because it has specific features to make that work good.
While if you're a lone designer doing design for physical products, you're probably better off with battle-tested Illustrator that has a lot more functionality around manipulating vectors.
In the end, it all depends on what you're doing. They have different use cases they want to cater to the best.
Sketch, Figma, and XD all make it quick to do the most basic prototyping: click hot spot to go to a different screen. They are much more focused on visual design than prototyping.
The extensibility and things that VSCode allows is something. I remember the hearing about pain of developing Visual Studio addons. Eclipse was an anti-example of useful extensibility.
VSCode in relatively short period became de-facto leader IDE due to it's features and extensibility options.
Eclipse is a fairly extensible IDE, with workbenches, it's just a terrible text editor. VSCode is a good text editor first and foremost. I saw a lot of complex enterprise projects using Eclipse and most of them ultimately were terrible to use because Eclipse didn't get the basics.
VSCode is rather easy to extend, since it uses JS and Web technologies.
- Microsoft making software for Linux? Huh? Is this an experiment? How long are they going to support it?
- It doesn't look anything like Visual Studio. Was this a bunch of rogue Visual Studio programmers that ditched their Visual J#.NET stuff and decided to call a fancy text editor Visual Studio?
[1] https://www.zdnet.com/article/microsoft-vs-code-turns-5-how-...
VSCodium [0] is a fork of VS Code without Microsoft telemetry and branding.
If Microsoft decided to stop supporting VS Code, I think the development community would quickly pivot to VSCodium and pick up from there.
Microsoft goes where the money is. They want developers to target their platform(s), and native Windows applications are a dying breed, everything is moving to the web/cloud, which is where Azure - and let's not forget Github - comes to play.
A ton of the development targeting the web had moved to Mac, the same time they completely missed the mobile app train, which meant they effectively lost an entire generation of new developers, not familiar with MS or even wary of them.
Introducing better and free developer tools on every single platform under the Microsoft branding introduces many developers to them again, with a positive impression. Which suddenly opens doors for Azure. It's the same reason they now have WSL2 on Windows running a real, heavily customized kernel. They want developers to feel comfortable using Microsoft, so Azure has a better chance. A developer having a good experience with "Microsoft" VSCode and coding in it daily won't be shouting "M$ SUCKS! Azure sucks!" as quickly, and that's where it starts.
And you see a big push of MS in the enterprise world of moving clients to Azure, and they don't care what platform you're using. If you're big enough, they gladly send a bunch of engineers to introduce your developers and infra guys to Azure, and they don't care if you run Windows, Mac or Linux, all their tools surrounding this are all cross-platform. At a client of mine's R&D department, this happened while I was there, and they didn't care that 3/4 of the tech people there were using Macs. Their guy who came in to introduce k8s on Azure even had a Mac a big Linux penguin sticker over the Apple logo, surrounded with various stickers of cloud-targeted opensource software. When I asked him about that, he responded with something like "well, they don't care, although I probably shouldn't add RedHat sticker".
So as long as "the cloud", which Linux dominates, makes Microsoft money, they don't care. And given the situation we're in, I doubt they'll ever be in a dominant position there to allow them abusing their power like they did on the PC desktop market in the 90's and 2000's.
Also, I don't understand why most of that needed to be done in VsCode. Surely they could've done the setup and asset export in the XD app that then also generated snippets for easy access in vscode. Instead, they're setting up all that meta data and complex workflows in a vscode extension.
Not only is that unnecessary, it's extremely annoying. Putting aside the additional bloat that has to go through electron, just debugging performance issues alone would be a PITA.
I can perhaps sympathize with the playback speed complaint, but I'm quite glad that not all video content on the web lives on a single service.
Agree on playback speed though.
document.querySelector("video").playbackRate = 2Thankfully the other videos were better.
But I’m preparing to migrate. Now that MS has set their focus, I just don’t think IntelliJ tools can compete.
It’s going to be like trying to sell a browser.
I pretty much only use vs code for Rust and random text editing, and even then that's mostly using Rust Analyzer, so I could just as happily use Sublime.
Vscode is actually "light year ahead" across the board with newer/niche languages like rust or ocaml. They invented LSP which makes supporting new languages way easier without compromising intelligence.
Now if you use a mainstream programming language, intellij is light years away and not realizing it is proof of ignorance. It would be too long to list all of what intellij has to offer feature wise. The insanely huge amount of static analysis for improving your code quality is a sufficient example. The VCS integration, the semantic highlighting, all the kind of hints, of visualization, their better autocompletion, refactorings and so on. I extensively used vscode before and intellij changed my life, it make programming better and easier. To show you the order of magnitude difference: let's compare the commits count: Vscode has 72000 commits. Intellij community edition has 295000 commits Now realize that intellij ultimate edition probably has gotten twice that amount of human resources.
The performance is the worth it downside, and it is improving at each release, I'm on early adopter versions (which are free btw with premium features) + use prebuilt indexes and I can finally begin to say that most of the time idea feel fast (on a 4 years old ThinkPad)
"all the kind of hints": I don't think this is the job of an IDE, this is something that linters do very well and I trust them more than I trust a software that tries to do all things under the sun. Take python for example, vscode has support for 8 or so popular linters and will populate useful hints if you intstall one or even many of them. So you have both power and choices.
It may have better autocomplete for some language (I doubt typescript) or refactoring but those are things I don't really care about that much. I've used those in kotlin & scala, their support seem nice but the hints and refactoring didn't blow my mind or anything.
This. Maintaining a usable work environment in VSCode is just too time consuming.