![]() One of the biggest factors in our decision to use Monaco was its tight integration with TypeScript, which makes it really easy to provide powerful autocomplete. In the scripting block, our code editor and autocomplete is powered by Microsoft’s awesome Monaco editor - the same editor used by VS Code. I do know many APIs, such as Processing, that are designed for brevity, which is irrelevant in an environment with good autocomplete. Strangely, I don’t actually know of any APIs that are intentionally designed with autocomplete in mind. In Bret’s essay, he mentions how some of his example uses an API specifically designed for autocomplete, for example by having related methods start with the same words. Several ideas are presented, but one of my favourite sections discusses a common feature in programming environments: autocomplete.Īutocomplete is useful for making the act of writing code faster (more time for snacks), but its main value is in discoverability. This is one of a few problems discussed in “ Learnable Programming,” a 2012 Bret Victor essay, which is now something of a classic in this space. We have all these inputs and outputs, but no way of knowing what they actually are without reading a bunch of documentation. ![]() CLIs can be very complex, but typically they have a pretty simple model: they prompt the user to input some information, then print some output based on that.Ī simple and easy to understand programming model is one thing, but that’s not much consolation against how intimidating a lone flashing cursor in an empty text area can be - especially for a new coder. They fell out of fashion in mainstream computer UI in the 80s, replaced by synth pop and big hair. ![]() We needed something simple but flexible, and found inspiration from a type of UI that’s been around since the very early days of software: command-line interfaces. They’re busy! They’ve got dogs to walk and kites to fly or whatever it is people with real jobs do. Building entire apps inside Airtable would be awesome (and if you think so too you should sign up for this beta □), but is a pretty high bar for the casual formula author we were thinking about before. We can do better!Īt the other end of the spectrum, there are full-fledged app UIs built with tools like React. You can’t ask your user for more information as your script progresses, and your output has to all happen at once. This model is pretty simple and easy to understand, but also feels limiting - there’s no interactivity. These act like functions in other programming languages: they have a fixed list of inputs, and return a single value as an output, and might have side effects in the meantime. Traditional databases have had something similar to scripting for a long time in the form of stored procedures. The documentation and resources available within the block □.The editor where scripts are written ✏️.In this blog post, we’ll look at how we balanced these concerns at three different layers within the scripting block: The new scripting block is designed to make scripting an accessible step up from formulas for these people, whilst preserving the power of JavaScript for more experienced devs. Nevertheless, they write code (formulas) and do computational-thinking (base design) every day - perhaps even without realising it. Combining different views, field types, blocks, and integrations means that anyone can use Airtable to create software tailored specifically to them.Ī lot of our users likely don’t consider that what they’re doing is creating software, nor would they consider themselves programmers. Airtable believes that software creation shouldn’t be restricted only to professional developers - so for us, making customization approachable is key.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |