# Community Meetup February 11th, 2022: Product updates, GDPR Automation, Lightning talks

## Метаданные

- **Канал:** n8n
- **YouTube:** https://www.youtube.com/watch?v=jG2aCOF0ICg
- **Дата:** 16.02.2022
- **Длительность:** 1:03:46
- **Просмотры:** 1,733
- **Источник:** https://ekstraktznaniy.ru/video/15726

## Описание

Agenda
(00:00) - Welcome
(02:25) - Product Updates by Max Tkacz
(15:10) - Handling GDPR with Automation by Thomas Martens
(30:50) - Q&A
(36:48) - Building an Automation-First Startup by Adrian Albus
(49:54) - Enabling end-users to Configure Workflows by Jason McFeetors
(59:35) - Q&A


----------------------------------------------------------------
About n8n
n8n is the leading low-code automation tool, and with over 250 integrations, n8n enables you to connect anything to everything. With n8n you can move beyond simple integrations to build multi-step workflows that combine both 3rd party APIs and your own internal tools to create easy-to-use automations. Thanks to its fair-code distribution model, n8n will always have visible source code, be available to self-host, is completely free for personal or internal use and allows you to add your own custom functions, logic, and apps.

Download: https://n8n.io/#get-started
Deploy: https://docs.n8n.io/getting-started/installation/
n8n Cloud: h

## Транскрипт

### Welcome []

all right so we already touched upon one icebreaker question but now we have a lot of new people joining in so i wanted to ask a non-technical question to you all so what is your favorite non-technical hobby what have you been you know trying to do or are enjoying lately which is not technical at all and i'll be honest it's more of my own personal gains i'm trying to get into new hobbies and i want to get some ideas oh these are some nice ones wow i like all these ideas huh how many i can do in a month or on or in a year i don't know but i really love those ideas folks keep them coming in i would like to know what are your favorite non-technical hobbies well uh you all are sharing your favorite hobbies i'm gonna just move forward and just gonna quickly give you a glance of the agenda over here so as usual we have product updates by none other than max we will then dive into a really interesting use case by thomas which is handling gdpr with automation after that you'll have an opportunity to ask your questions so feel free to ask any questions that you have in the chat and i'll make sure that i ask your questions to the speakers we then have adrian from opsmit who will be talking about building and automation for startup and sharing his journey with us and lastly we have jason who is going to teach us how to create workflows which can be easily configured by end users and then if time permits will have a favorite ice breaking sessions with about which i'm gonna talk a bit later on

### Product Updates by Max Tkacz [2:25]

so without wasting much of your time let's give it over to max to show what we are working at a time go to you max as always harshal thank you so much for the lovely introduction i'll just get my screen shared here um can we quick check can we see the screen yep perfect all right um lovely to see everyone here some uh some familiar faces and some new ones i must say this update we have this week i'm very excited for there's a lot i've even got a timer and written notes because there's a lot to get through so i hope you're all very uh excited to see what we've been working on uh the team's growing so we're doing more and it's just an exciting time to be working on it and then um so the first thing that i'm going to update uh it starts with user and ends with management it's something that a lot of you have been asking me personally and a lot of our team members for quite a while and i'm happy to say that we're almost there and on that note here's the first sneak peek of what um it's going to look like so this is a screenshot of the user's view of course you can add new users and then um etc so i wanted to give this little sneak peek because i don't have a working demo for you uh right now um but having said that the functionality for the mvp this version one is complete um so that's good news and we are actively testing it um so um of course it's a very big feature as we sort of said a few times um and it touches every single part of naden so the current state is we're sort of marrying the front end and the back end and then we're going to do a bunch more testing before we release it all out to you um so i just want to um manage those expectations that um it's almost there we're working on it i would say it's almost uh entire senior engineering team is on the case we just want to make sure that we're releasing really high quality v1 for all you given all the anticipation um on that note i do want to set some expectations of what you can expect from the first version um so you will be able to have multiple users coexisting on an instance they'll be able to have their own credentials and their own executions um and so this is kind of one of the biggest i think pain points right now as an organization or a team says hey look we love nan um but everyone's just in one instance right now sharing credits it's not really good for scaling and you know most people don't want to maybe handle 50 different docker instances right totally there so that's going to be the primary thing that we're trying to achieve with this version um and so you can rest assure that you know a bunch of people can collab can be on one instance um and have their credentials uh most importantly secured um there will be an owner user that can view all workflows and credentials sort of a pseudo uh user if you would um but what it won't have is sharing of workflows we just want to set this expectation be clear about this and i want to provide a bit of context as to why um a lot of what you're going to see as you can see here there's going to be some sort of beautiful ui etc but most of the work um is you know there's so much in the back end that we'd have to touch really to realize this feature and to set up all the other things that we'd like to achieve in this future so what you'll be seeing um will um you know a lot of what you're seeing you want to see what we've done under the to set up all these things that we'd like to have in the near future so um once this is released the types of features that we've already designed planned researched and have you know committed to sort of building as part of this feature you know will be things like sharing role types all those sorts of things that you expect we just want to manage the expectations in this first version we won't have those because we wanted to not delay getting this out but that the groundwork has been set so that it won't be sort of a mammoth task to be adding these other things that you might expect in a mature user management um so yeah that should be coming out really soon i don't want to put a date on it because again the qa process uh i want to respect that um but yeah be checking twitter etc we'll probably be dropping a little hints when it's right out the door so obviously everyone here at naden's been very excited to release this one so that's like the big mammoth feature of course that a lot of you have been picking us on but because the team's growing working on a lot of other cool stuff that's also going through the design and engineering process right now um the next one is a refactor of the no details view so here's a little sneak peek of it right here um and so the no details view if you're not familiar this is our term for when you have a node expanded sort of the modal way where you're setting the step um with this refactor as you can see it's gotten a sort of a ux overhaul a visual lift but of course um we don't just do sort of visual updates for visual sake really the goals of this feature were to reduce the need to context switch when building workflows um so one thing you probably notice if you're building a non-trivial flow is you've got to close this mode all the time go to the workflow go to a different node copy something come back so one of the biggest things we're adding here as you can see is this input pane and by default it will show the immediate input that is the first connection coming right in routing and data but you will be able to toggle this drop down and select any sort of node previous in the workflow instead of this immediate input so how we envision this is it's going to be a lot easier to reference so when you're setting up this step you can reference again most of the time the data that's most relevant is the one being immediately sent into it but you can toggle between that um and sort of looking ahead a little bit you know one thing we do envision generally in the no details view in future is to refactor how people handle expressions to also reduce context switching and some early concepts of that um showing sort of some hopeful signs of potentially having drag and drop from the inputs pane onto these expressions so that's a bit of a ways off this drag-and-drop feature but sort of giving you an idea the why behind how we're sort of building everything we try to ship features lean and iterative but do a lot of sort of thinking on the long-term future of it so we can sort of add uh with everything that we're sort of building um so just looking at my notes here i want to have a big shout out to everyone that helped us test this we did spike a proof of concept of this and of course the enhan community when asked jumped in helped us out to really thanks for that i think we got a lot of validation of what we're going to build here is going to be sort of helpful and a big improvement and what you're seeing here is just a sneak peek of this feature there's a lot more underhood a lot of issues and uh maybe frustrations and annoyances that we've been um researching and and coming up with the solution for this is a regular node trigger nodes have a sort of a similar big revamp i guess the last thing i'd say on this feature is that this middle pane will be adjustable so the input and output pane will grow depending on which context is more important so if you're looking at this view and saying oh no what am i going to do in table view don't worry we thought of that and you will be able to adjust it um so this one i would say the design of this is finished and since the front end for user management is practically finished this will probably be the next uh big feature that um uh some of our front engineers are starting on we've already started the work plan for this so it's very much earmarked and we're about to break ground on code the pixels are all done um the next feature then um so yeah just quickly yeah design for the no details view is done breaking ground on implementation soon um the next feature that's also been designed and we plan to break ground on likely after no details view perhaps in parallel given the team's growing is work for notes so you know we do have notes within nodes but of course um having the ability to annotate your workflows helps yourself when you come back to it three months later and you forgot what the hell's happening because it's been running fine and then something um external broke um but also we see you know this folks who submit workforce publicly to entertain to i o workflows if you do have any interesting workflows please do go ahead and submit them but this offers sort of another mechanism for you to annotate your flows and basically share them and also within your organization or publicly so we're very excited about this one because i think it's going to empower the community to do a lot in terms of coming up with great use cases and sharing them with other people um looking at this uh in the v1 we will be supporting markdown so with that you will get things like links titles lists that all should be available out of the box here you're seeing an example of um like a concept of maybe how a note might look if it is kind of an onboarding note um and they will be resizable so when we were doing some research between auto resizing and not we decided to opt for manual resizing because out of the box given you have markdown and titles you can do something like you've seen b here which is grouping sort of nodes essentially at least optically so that should be helpful if you have different parts of a workflow um that you want to annotate especially in the sort of the case sometimes maybe you've done a bunch of black box magic in a function node or a series of nodes and you're sort of telling your other users don't touch this touch these nodes here to configure the workflow so that'll be something you can more easy cleaning okay and also for yourself another thing we did is sort of when testing all this is zooming in and out we've optimized the different headings here so that kind of works across different sizes um post mvp the first version we have a lot conceptually that we'd like to ship of course we wanted to ship the most valuable thing first but once this initial version is released and everything you're seeing here should be possible in this initial version we do plan to do things like adding color themes um so as you can imagine a red one could be useful if you're sort of indicating what happens in an era there's my timer there so i'll finish up quickly and for example in this mock-up perhaps this is what a community workflow might look like so you have sort of a clear you know call to action on how to get started don't touch this part right it's all set up but maybe you do need to set up this path or that part some of the other things that we're looking at for example is if the link resolves to a workflow json that when you click it swaps the note out for that workflow and paste it into the flow which would allow us to do things like if you're setting up a no a workflow and the last node is a crm it could be a note with a link to five different crms and you click that and it just swaps that out for that part of the workflow that works with that crm so these are all concepts um there is in the community forum uh sort of a notes feature planned or posted there so obviously we post there when it's out but if you have any ideas beyond what we expect to make for mvp or anything that i just referenced here get chatty with us we love to hear about that um any feature we build we have a roadmap for it so we commit to an initial version right we release that and then we're always expecting to keep building on that feature so even if your idea is complicated and won't make it the next version we write everything down we love notions so please do get your ideas in because we want to make this um as awesome as possible and we want to make workflows as legible as possible because our mission is to give everyone with computer superpowers right so to do that you need to understand what you're doing um so there's a lot of other stuff in progress um i will say we have started specking out a public api i won't see more on that now but as you can imagine there's a lot of exciting use cases that will be supported by that um and yeah as always thanks to everyone on the internet team um for helping realize these features and to our community i think i send out a link for user testing like 30 seconds later all the slots books so if you guys are all amazing and thank you so much over to you harshall hopefully your sound this fixes soon harshal i don't have too many ad hoc riffs available whatever thank you so much max uh this ah i can see all the love that is coming in from the community right now and everyone is excited for these features and i cannot myself wait to try out these features thank you so much again for sharing this now

### Handling GDPR with Automation by Thomas Martens [15:10]

now moving forward we got tom with us who is going to talk about a pain point that he came across and how he solved that and he's also going to help us learn a bit more about gdpr so tom over to you thanks so much harshal okay folks the boring part starts now we talk about uh laws and regulations let me share my screen and uh we'll dive right in um it's not that many slides and actually i'm not a lawyer so it will be fairly short don't worry um just in case you you're not familiar with gdpr like it's a term that has been in the news for quite a while this is like a eu european union regulation gdpr stands for general data protection regulation but if you're not living in an english-speaking country you might know it under slightly different terms i've listed a few here and there are many more but i don't speak many more languages so there you go the gdpr mostly grants certain rights to individuals so we as a company and it and do have no benefits from n but uh lots of things we need to keep in mind and that would be the same as soon as you process any personal data but you as a user can benefit from gdpr you can ask companies to do something and they have no choice but to comply with your request and we'll go into what this would be in a second has also been like mocked by a lot of people but has been quite a success actually there are a few international regulations that mimic most of the gdpr features if you live in california you might have come across the ccpa virginia is currently think on the road to releasing their cdpa and they all cover kind of similar things so um even if you don't have gdpr yet in your country this might become relevant eventually for you now what we care about this um and this is now my very personal perspective on this uh individuals have the right to request the erasure of the personal data from companies organizations government agencies and so on this is also known as the right to be forgotten so if you don't like us storing your data you can come to us and say hey please delete my personal information we then have a deadline of one month in total and that is because we're data controller right so you give us your personal data and we control it we might um give it on to subcontractors to further process it but we still have the obligation to make sure it gets deleted uh within a month there are some extensions possible but i'm not a lawyer and just that i learned after reading through this is you have one month and don't even try to get these extensions um so that's the deadline we have non-compliance can be very expensive um so of listed defines there it's up to 20 million or four percent in annual revenue of the company whatever is more so i can be quite expensive though i have not heard of the highest uh fines uh being issued in the past um and one thing that i've noticed over the last month and uh was that it's a business it has become a business there are service providers out there that help you uh enforce these rights so one of the service providers would scan your email inbox for any suspicious messages from companies and would then email the companies for you and request the data deletion for you and on the same side the very same service provider would go to companies say hey do you need any help with uh data deletion we can assist with that if you pay us money so um yeah it has become a business and that has uh led to a noticeable increase now uh how did we deal with this um this is a timeline on the left you see monday tuesday wednesday thursday obviously this represents four random days not all requests come in on a monday but it kind of realistically represents the timeline we have um so monday a request might come in and it would then just read the email acknowledge the request go to the nicest services have a pleasant ui where data deletion isn't really a problem next i might reach out to other teams that control their own databases and services and i said hey guys can you please delete this the data related to this user id then whole day is reserved to deal with nasty services and there are quite some you wouldn't believe that there are services that don't let you search users by email address or by any id you use internally but require using their own id um so just very few services make it very slow sometimes and on day four is usually the timeline we were looking at the stuff is done confirm deletion all good on the right you see like some of the screenshots from my internal documentation um as imagine this was quite a lengthy process and not much fun so um here's a few reasons why the old process wasn't much fun wasn't great it's error prone so you might imagine when dealing with lots of ids lots of different numeric ids might all look similar it's easy to mix them up even when copying when working with email addresses just imagine you leave like a white space at the beginning of a field or the end of a field that obviously will no longer match a user record when talking databases so um simple we're humans lots of human work is involved there's lots of room for errors it's also slow for obvious reasons because um well there is other stuff to do not just deleting data and that's also in transparent um because uh like imagine i start a monday then get sick on tuesday like no one knows what has been done with this deletion request uh what needs to be done there is also typically no luck at the end of what has happened when something has happened so it's very in transparent and now obviously working at nhn we couldn't keep it like this so how does the new process look like darren i wanted to switch that's it so it has become a simple slash command and now deletion is as simple as issuing this slack command and suppose this is very boring to show so let's do a quick demo this is the wonderful workflow um it looks a bit convoluted but part on the left is mostly handling slack commands and keeping it flexible slash commands so let's see actually run the workflow now let's request data deletion as i said this will be the command and um we have little wally here confirming that he's on it i really like wally because he's cleaning up stuff and that's exactly what the workflow does now switching to the workflow we can see that it has received the slash command the first step then is some basic validation so slack does attach a unique token to each request and that can be used by receiving servers to validate the request right so i'm just comparing tokens here um then i use this headnote to format my data a bit and that is because the information coming from slack is very comprehensive right lots of data i'm not interested in i don't really want to work with it's just confusing me so i'm using a set note here to simplify it basically in an operation and then an email because that's all i need to know here at this stage and then i use a switch node and the idea is to keep this workflow easily extendable so what this workflow does is it reads the operation and then depending on which operation has been selected it routes the execution to one of the outputs so far it only supports the delete operation but it can easily be extended right so you could easily add a new rule to also process information requests or whatever you have in mind by just connecting it to another output and all of these paths also have error handling so if at any stage validation fails i would send an error back uh just to uh let the user know or in this case like if the token fails and just um responding with an empty body but uh in other in all other cases you would get a nice and talking error like telling me this email address has not been found telling user how to actually do this now let's assume everything is working like here we just acknowledge the request this is the first volley message saying that's it we then call sub workflows and this is what i really enjoyed working about working with nhn here um all these sub workflows process the deletion in a single service so this workflow is easily extendable and also uh customizable imagine i no longer want to we're no longer using customer. aol data i can simply remove this node and the workflow would still work as expected right there is not much more to it if you need to integrate a new service you can also execute another workflow another sub workflow here and doing this using the execute workflow node this is like a powerful node that just runs the sub workflow and it keeps it nice and clean and now after all these sub workflows have executed i'm just preparing a nice log entry i'm then hashing the email address and uh why do i do this obviously um i want to keep a record of what i've done right when the manager max comes through and say okay tom what have you done last week uh like uh it's like nothing really or i've deleted data but i'm not allowed to keep blocks of it um so to not run into this situation i actually do keep blocks but uh without personal information so what i'm doing here is i'm calculating a hash value based on the email address and this is the value we'll use thereafter this also helps in case something does come up so this wasn't just my work this is a collaboration with workflow to mazina and john both from the nhm team have helped here they have worked on each of the sub workflows on getting some of the legal information around this and one of the problems we really had was okay what do we do of about our affiliates so people who would usually get money from us they might reach out and say like hey can you please delete my data and uh no what does this automatically end the business relationship or not so these were questions that had to be answered um turns out in case you're curious yes if you ask a business partner to delete all your personal data you're no longer a business partner you can no longer expect to get paid because there is no more data for your file um well in case complaints come in later and say okay what did i not get paid i could again calculate this hash value and say okay that's because you have deleted the data deletion a few weeks ago a few months ago or whatever um and then the last steps are really simple i append this data to add table um which is where i keep my log in this case and then respond to slack now the response looks like this so you can see like uh has finished shows me the status with a nice green check mark if it went okay actually it's called white tick um or red cross and a red x if it failed and also has like a deep link to the ad table lock so can take a look at how that looks like so here we have the email hash as the unique identifier keeps nodes of all the data that has been deleted and this would also be where it would lock any problems so we will take a very brief look in one of the sub workflows in a second in case any problems would have come up this result would not have been done but instead it would have say error and the nodes field would contain details of the errors you can obviously um like customize the logs if you have more in-depth requirements but i think for now this is a good enough process now set customizable teamwork this is a single workflow but there are also lots of these sub workflows and they are what uh was really fun about this process so let's open the zendesk workflow here so you can see this is how one of these sub workflows look like that delete data and um you can see this is actually a credit to john here i've deleted the actual deletion disable the actual deletion just to make sure i'm not accidentally deleting any data while demoing this but you can see like this first node again sets the incoming data it also sets some dummy data in case uh which is a really cool feature of init and it lets you use javascript so i can run the sub workflow on its own if i wanted to test or debug it without triggering from the parent workflow so what i'm doing here is i said i take over the email field that i get from the parent but if it doesn't come through i just set my dummy email address here just something to work with so this workflow would be able to run and then it's just like any other workflow no dark magic here first checking if delete if this is a delete operation if not return an error checking if the user exists if not return success because technically not every user might exist in zendesk right so a non-existing user is a success case from the deletion point of view like don't have anything to delete this was still a success no error and afterwards i delete all my data i'm not doing that here actually but uh in the real world i obviously would delete data here for real requests so if you ever reach out i promise i will delete your data but uh i'm not doing a demo um and that's basically the idea so um to just reiterate on these key points for collaboration that i've just mentioned um how we split up the work was we use sub workflows for each of the services that we need to delete data from we agreed on a consistent data structure so we defined how does incoming data for each sub-workflow look like how is the outgoing and keeping it readable said this i have some notes with the default names but most of the notes do have readable names that just describe what they do so avoid keeping notes that are just called http request or if without anything else so um where to go from here is my final slide and then you're all about my gdpr deletion approaches here um you think i was thinking about was implement additional gdpr processes you've already seen this switch now that i'm using um but funnily if i have not seen a single information request coming into any and it would be rather boring if ever signed up to any of the services like if you use any cloud we asked for an email address and a nickname and that's it right there is no exciting data to request i suppose that's where no one would ask for that um please don't ask for this now because lots of work for me um second thing is build a ui like i personally love slash commands but not everyone else might um so i was thinking maybe a simple form uh teflon dude has already shown that in a previous community meetup which is really cool how to serve simple forms with ntn so was thinking about making that possible and the last thing is connect to manual operations so not every team you're working with might want you to update their production database so the idea was um you cannot send out slack messages from nan or mata most messages that attach buttons where people can confirm once they've done something and this is something i wanted to work on next and um that's how we currently handle the power deletion at uh and at n and if i may say because we were doing gdpr deletions before tom came on board it was very painful uh it was very manual quest didn't happen very often but um this is truly revolutionized how we have to handle this kind of uh requests definitely i can agree on that uh thank you so much tom for sharing this uh it it's like the first time i saw this uh i was blown away by how much you can do and i'm sure it is gonna inspire a lot of our community members as well now

### Q&A [30:50]

let's move ahead to the next part which is the q a uh and i have got a couple of questions from the community members again folks if you have any questions feel free to ask them in the chat so the first question is for you max uh it's around the user management feature and they ask can you block access to certain information in individual modules or access entirely to a module um i'm assuming from modules will you mean nodes here um and so yes there is envisioned in functionality generally um from a ui aspect like being able to do it from the ui that won't be in this very first mvp but absolutely in our research it would basically be credentials and nodes we saw as kind of the biggest things that people want control on so any kind of questions about permissions i can tell you that for the whole vision and roadmap of this feature these are the two things with credentials being the most important one of course where you will probably see the most granularity um across different things because that's where we saw there was a lot this sort of need and potential pain around if that went wrong right in a real world scenario make sense and you also talked about you know that uh the user management feature is currently under testing so if a community member wants to you know be involved and help with the testing of this feature how can they be involved um so that's a really good question because right now we don't have some sort of formal alpha program or anything like that um what i would say is i can have a chat with a team and what we could consider you know we definitely want to do some preliminary testing because if there's some known issues that we're working out it's not all that helpful to get that confirmed right um but if that sounds like it could be helpful we can have a chat and most likely we'll post something in the forum if we do on sort of alpha release to test and whatnot but i'll have a chat with the team we've got a meeting monday morning and see the feasibility of all that because obviously inbound interest to help is much appreciated so yeah i'll follow up on that request wonderful thank you so much and tom this one is for you uh how do you stop the abuse of the slash command do you have some kind of authentication in place yes this was done through the token that i briefly ran through so i didn't want to focus on that because that's more slack topic but um slack generates a unique token for each application or for each slash command that you register and you can validate this in the workflow to make sure this is an authenticated request coming from slack and not from someone else you might have seen the end point right now in the demo for example you would only be able to execute this when running the token you can perform further validation if needed right you could validate the user id received from slack after you've validated this a legit request from slack um to be completely honest here like the production workflow i only enable this when i actually run a deletion so the workflow is disabled most of the time as an additional manual safeguard if you will but uh that the token would be the main validation point for all slash commands not just for gdpr got it thank you and the other question for you tom is what is the best way to income in corporate forms in an attend oh i think um this is something that uh i'm not the expert on right that would be jason he said like he will be showing a form a bit later so um but essentially you could serve html uh right from ntn right you could use the web hook and respond to webhook notes to serve an html form which then sends response data to another web hook um that's how i have done it in the past but i'm sure like uh jason has some more insights on this in a bit sure next this one is for you like do we have an eta for the new ui for i think it's around the node uh input that we showed earlier sure so um there is no sort of uh release date on that um since engineering hasn't broken down i think if i gave one um i might have some upset engineers because they really care about high quality so there is no eta but what i can say is that the design is all locked and tested and the work plan has been done so um i think we're using some of the resources we're going to use on no details view to just finish up user management so i'm hoping that next week we're breaking ground on it so i can't say um but it's not sort of one of these things that's sitting around in a backlog for a long time it is like ready and internally we're very excited for it so there's a lot of appetite to break ground on that and get it out to all of yours wonderful and let's another question is for you as well max and it's on the user management feature is there an option to share workflows to be used as a shop workflow without edit permission yeah so at the moment there won't be sharing of workforce in the minimum viable product in the v1 so the biggest benefit will be that again if you do have multiple people uh that before all had to share this one account they could all edit permissions or can edit each other's credentials and whatnot you will now be able to support those users without having to spin them up all in their own um workflow and so in the next phase we have already sort of designed out all the other permissions and everything there but i will take this case um because that you know once this features out we'll then be sort of reassessing that making sure nothing's changed any feedback from the community so we can sort of check these cases um because uh that's a really good point and i wouldn't want to give a specific answer on that because usually with this permission stuff gotta go to look at the notes and kind of run through it to give like a definite answer wonderful thank you so much both of you for answering all the questions uh let's move forward to the next talk

### Building an Automation-First Startup by Adrian Albus [36:48]

so adrian is the co-founder of opsmit which is an automation for startup so let's listen to his journey on building an automation first startup and about the opportunities and challenges that they are facing right now they didn't owe to you hey guys nice to see everybody i'm um i'm really excited to have the chance to chat with you guys um for a lot of reasons but mainly because i am uh i'm a business person so the question is like what the hell is this like mba doing at this amazing meetup with this like huge room of technical talent like it's almost like that party in college that you walk into and you're like i'm not supposed to be here but i like it here and how do i make more friends so that's sort of my lead up into this um you know i've nan has been on my radar um really since october when uh when i met this uh this gentleman that lives in edmonton canada that i think that a lot of you other uh folks know mr jason betters um and and i have to give him like a huge shout out for introducing me to what is happening in business automation zapier so let's just set the scene that way so a little bit about me um you know like what do i want to be when i grow up i would say that i'm still very much trying to figure that out but part of what i do for a living is sales so let me try to sell to you a little bit about why this person who has this kind of like plain vanilla business background like reform management consultant like mba but i don't really use that for a living i work for a corporate strategy team for a big cpg company and then i think that my life really changed in 2014 when i started um working for a tech company in business operations um and then was able to uh lead a uh a tech startup from seed to exit as ceo so um you know i learned a lot about how to build grow uh in scale companies but i think that the number one thing that i learned and what's most relevant for this conversation is how i felt after i sold my last company and it's not like how it looks in the movies like it's not wolf of wall street where everybody's you know drinking dom and the 100 bills are coming down from the ceiling right the way i felt was just completely burned out and like a marathon runner that couldn't go another quarter of a mile beyond the finish line so i've been spending the last year of my life it's been about a year since we sold the last company and really thinking about why i personally felt just so burned out after that experience and i think that part of it is that i really thought i knew i want what i was doing and i was just doing things by the book right it's like what i was taught at the consulting firm and in business school and one of the things that you're taught in the book is that internal operations all you have to do for that is to buy sass you hire smart people and let them figure it out it's sort of the uh the ethic that uber has made very popular um all around let's just get a bunch of smart people let's get them working 18 hours a day and let them just kind of figure out how to run the company and what we're building at opsme is really i think my answer to a different way of building scaling internal operations at high growth companies because like let's just face it the reason why there's so much vc money going into tech is because the margins are outstanding so and and what vc's hand wave is that as long as your gross margins are good revenue minus you know direct costs of goods sold as long as that's like a 60 maybe a high 50 we're good you can have all the cash you want but what's buried underneath that gross margin line in sg a is all of the operations people and whether that's marketing ops or sales ops or finance ops or customer service ops all of the manual turks that are operating companies today with very little technology and i know that resonates for a lot of people in this room because we are after all at like the best automation tool that's out there um and a lot of people using their evening on a friday to participate in this so as a business operations person like this is what i see when i look at a company that you have product and engineering building customer facing product this is what the customer sees and uh you know bespoke you know that full stack engineering effort usually goes to building customer facing product and that's exactly where it should go like no company is thinking about how do i differentiate versus competitors based on internal operations maybe there's some conversation in customer service hey it should be a revenue uh channel get that but the reality is that there's all this hidden effort which just kind of goes on the back of operations people that just operate manually like your seven sas apps your five spreadsheets priorities changing oh there's a board meeting next week let's drop everything because we need to create all these reports manually and i think that this is sort of how i would describe what the status quo looks like and as a founder you can't go wrong just doing what everybody else is doing and is let's just build a v1 of ops like i think about ops is having mvps too that looks like slack emails spreadsheets maybe a little asana and then there's a point where the business starts to scale and just what people do is that they add sas they add higher they add outsource but what people don't i think intentionally realize by following the status quo is that more unconnected tools adds more complexity so the whole reason why we love tech is it can scale very fast but the product can't scale if operations doesn't scale along with it and my experience has been manual operations often holds back a really amazing product from scaling as quickly uh and getting into as many users hands as it can so like we're at the nan meetup like i said like we're smart people that are comfortable being contrarian so what if the status quo sucks i think we all can see that and i think that many of us have experienced that like what does another option look like and and really you know we're building ops mate to be that other option and not to say that people shouldn't follow the status quo that is an option today but what we're building is another option where instead of just adding sass and adding labor that once you've evolved beyond kind of the v1 operation stage that this is exactly the time to begin contemplating automation and what can that look like what is the work we're doing let's do something fairly shocking and like write it down like nowhere i've ever worked has had workflow diagrams and you know why because i never thought to do it because ever nobody else was doing that and that just seems so pedantic in like a fast moving tech world like hey everybody let's not do any work for a week and write down workflow diagrams about the work that we've been doing but when you look at things through an automation first lens it just makes sense because if it's hard to automate things if you can't see those connections and i think another huge thing that particularly jason has taught me is all around infrastructure that like at my first job ever out of college if i was home doing work i had to dial into a vpn to hit a on-prem network that was in a little closet in the building that i worked in and what i'm seeing from clients particularly clients that work with a lot of pii is that they don't really understand the risk that they're putting customer information through by just like say sharing public links um over slack so that that's i think you know really i think we're all in because i'm at time which is i think that everybody in this uh in this meeting has the same end goal in mind like how do we initiate this macro change in how work is done and i think my goal in this talk was just to kind of give the business ops perspective a very non-technical perspective about how it looks when you're the ceo of a company and you have a decision to make about how to build ops and i'm very optimistic that the next generation of founders the founders that are using you know bubble to build their sas and using notion for knowledge management and using pipe um to securitize some of their mrr so they don't have to sell part of their company for capital that this amazing new breed of founder is going to be embracing a very new way of building internal ops that's really you know like the title of this presentation an automation first mindset so i'll stop there thank you all for the opportunity to talk um and uh yeah i appreciate it i'll kick it back to you herschel thank you so much adrian uh this was really helpful and yeah i see a lot of people in the chat also agreeing with me and agreeing sorry agreeing with you uh and i have a question i know you have to jump off to another call so just one question that i came across in the chat is how do you explain this to the business and not let them stay in the old habits it it's an amazing question and i'll tell you how like we're handling it at ops mate is that we are talking to companies very early in their cycle like we're talking right around the time that they're about to raise the seed round and trying to hit them right at that inflection point where it's like we know what we have doesn't work like we don't even have basic tools and to provide them with a product that they can use in lieu of buying everything separately and having all these non-connected apps so i just summarized i think that as an industry we need to think about even earlier in the maturation process to get companies building automation first so that when they're scaling you know past the 100 million dollars of arr that there's already that infrastructure and ethic it's just how we do things assume thank you so much adrian for answering that i don't want to take more of your time uh thank you again for being in the meetup and sharing your story with us nice to meet you guys and if anybody has any follow-ups hit me up on twitter um at adrianalbus cool thank you guys thank you so moving forward uh it's the

### Enabling end-users to Configure Workflows by Jason McFeetors [49:54]

time for the last talk of this meetup and let's just get ready because whenever jason is you know in the meetup he always has some really interesting wonderful stuff to teach us so not gonna take more of that more of jason's time and jason the floor is all yours thanks a lot every time that i come in here and you and you introduce me i feel less and less like i'm actually prepared to meet up the expectations that are coming out and i also noticed that i think i need to update my photo um that you have on the screen there i'm i look far too young and energetic compared to what i am now so today um i was given some thought earlier on the last couple of weeks just what to talk about and uh one of the things that i've been starting to experience is we go and we do a lot of this building up of automations to make usually somebody else's life easier and what ends up happening is that they you know we've got all this stuff in place and now what we end up doing is we have this other process that we've taken away from them and it kind of lands with us so i thought why don't we do a little bit of a presentation on pushing that back to them so what i've done is i'm just going to share my screen here is i have uh put together this wonderful little ending in workflow and so the scenario here is we have somebody who has they've got this shopping list that once a week somebody goes out and gets all uh picks up all these items in an office and so the uh the person who's managing this came to me and said hey you know what is there a way that we can just you know have an easy way to add this information in so that people can go and put information into the system and then once a week the list gets emailed to the person that needs to send it out and we said sure no problem so what we did is we set up in base row a nice little shopping list and it's just whatever you need and then uh from base row because base row is kind of nice for this um it's created a nice little form that's just inherent built right into the base row there's nothing that we haven't even touched anything at this point and so it's you can go in here you can put in you know whatever you want it doesn't care you hit submit and it just shows up in your list so pretty straightforward nothing really rocket science sciencey there and then we set up a cron node to every uh every week on friday at 1400 hours it'll fire it off it will go it'll pull that list in format it properly and then send an email out to the person and i think we've got this going to uh tom example. com uh who's receiving this and they get the list of all the things that are that they get so pretty straightforward but now here's this one less task to do fantastic well of course anything that's good is not good enough and the boss comes to you and goes hey that's great but you know what tom's not going to be in on uh friday so we need to change that email address so he uh he calls you up and says that you know we need that changed and says okay who's going to do it oh wait i'm not really sure let me go and find out calls you back an hour later oh yeah it's going to be bill bill's going to do it okay fantastic what's bill's email address oh i'll get back to you so all this is just taking up your time wasting your time quite frankly so i thought why don't we just take this to the next level so we added in this little bit here at the bottom and essentially what we what i did is i created we've talked about forms earlier we created a little form and that's just this little piece here and what it does is it creates a and of course i cannot see the rest of my tabs because of the tab bar at the top let me just move that aside there we go sorry about that uh so that form looks like this and this will change shopper form and along with that we've created a shopper table so this is the piece where instead of now embedding the configuration inside of anything so that if i want to pass that work off to somebody else i'd have to go in and i would have to give them access to anything we've actually got it stored in this database and when they come into here so this is the form that we've set up and again this all runs from this little workflow right here and all it does is it gathers the information when the form is submitted it gets the present shopper and that allows it to show who the present shopper is here and then it just the last node generates the form and it spits it out as html and that produces this for us so the other piece to that is the second one where the second web flow sorry web hook grabs that information when it's posted it gets the former shopper information and then sets the new shopper information and the reason it gets this is because it's going to overwrite that record it then writes that record to the uh database and say and it creates the response page which is just another html page so when i go into here and say okay it's going to be bill is going to be the person who doing the shopping this week and we hit a submit there you go so now billfold is going shopping and we'll notice here now bill is the person who is going to be doing the work in order to make this work all we have to do is add one extra thing in here and right here we're going to add ourselves an extra node we're just going to add another base row node and we'll grab our credentials and we are going to grab from the office shopping list the shopper and we're just going to return the single one and when we do this you'll see that it will of course i don't know very good so now it's got bills information quick change here to an expression just delete this i'm going to grab the data from the previous node and now you see it's bill who's going to be doing the shopping so now instead of the manager calling me up and saying oh we got to do all this stuff we've got to make all this work and you know calling me back three times because he doesn't have all his ducks in a row all we do is just say hey all you need to do now is go to this form you give him that url and everything gets done so i think this has a lot of implications doing this type of work and setting things up this way a lot of implications for our sanity as automators in our sanity as people who are managing this infrastructure it allows the user to have the flexibility to do various different things within certain realms and it eliminates those little interruptions you know because the interruptions are really what kills your day they say that a single interruption will take you about 20 minutes to get back on track after you've gone and gotten off track so this here if you have to call you three times you've just saved yourself an hour of effort so you can take that extra long lunch break which is what really counts and that's it that's pretty much all i wanted to show you guys today um again it's not super rocket science but it's i think it's something that can you know looking at i know how hard all of you guys have to work i think it can make a big difference for you and i'll just send that back over to herself jason every time you give a talk it's always a simple solution but it's mind-blowing and it makes your life so easy the bar is set high for next time eh and yes we'll i'll get you a new picture thank you so uh thank you jason for this uh as i mentioned you know it's always inspiring to see these incredible ideas and learning from you so we i am gonna wait for a couple of minutes to see you know if you have more questions coming in uh while we i while we are waiting for the questions jason

### Q&A [59:35]

uh we had a question earlier on forms so what is you know the best way to integrate forms in n10 and you have done a lot of work and you also did show us a couple of ways you can how people can integrate forms do you want to extend on that sure um so there's a couple of uh of things around that um what i've shown here is i typically like to do most of my work just specifically within nan when i'm doing my demos um i don't want to complicate things any more than i have to um and then this way you know if you have nad up and running you've got a full solution right there you don't need to do anything else that being said i am kind of abusing the web hook node a little bit or maybe a lot um it's kind of complicated to get like graphics in there it's challenging to you know write the code because you have to write it as an expression in the expression nodes or the expression editor so really what i recommend is you have some other form of a web form generator or tool to do most of that so most of my work right now in experimentation is using uh what's referred to as a caddy server so if you're not familiar with cadi server it's essentially a nice little all-in-one tool it's open source that lets you host your websites it acts as a reverse proxy it uh it's got an api for automation so i'm actually working on any in workflows that completely configure cadi remotely and that's probably where i'm heading where i'm going to have uh workflow sorry um uh web forms built within cadi that will then just point to naden it takes the strain off any then it uh isolates it onto a different system if you want even and it allows you to have a uh a bit more of a robust and um and a better way of actually doing some of this stuff and yet it can still you can still pass information from caddy to ndn and vice versa through the apis and the web hooks so you've still got that dynamic piece working in behind the scenes so there's a long uh answer to a short question and if i may add on the topic of generating forms within it and i think you know jason has aptly put it you know there are better tools if you're trying to do that a lot because it can get a little finicky um you know a product is a living breathing thing so if creating forms is something you do a lot and you would like to be easier and edit in you know that's what the community forums are for everyone can post a feature request so we have had conceptual as you can imagine we love it and then so we talk about like probably years worth of road maps sometimes in a brainstorming session um but these are things we've discussed right um for example in the weight node um you can have a uh it waits until it receives a web hook um same could be said for a web form you know what is the scope of what a simple web form builder in internet might look like so it's nothing that's on our official roadmap but you have the power to put it on our official road map with enough upvotes you know on the forum so if this is something that you think would be a game changer for how you use n i shall just post a link please do um submit your feature requests and we'll sort of go through the process in getting assessing the community if a lot of other folks want to build it and if they do you know it's more likely to get built wonderful thank you man for jumping in and thank you jason for uh sharing the answer i'm gonna try caddyshover and see you know and i'm definitely gonna ping you and trouble you with that uh but yeah thank you for that uh i don't see any more questions coming in so i thank you for joining in it was wonderful to have you and i hope to see you soon in the next meetup
