Developer Spotlight: Wiktor & Lewis, Developers at Cobry

Developer Spotlight: Wiktor & Lewis, Developers at Cobry

Show Video

Early on in the Cobry journey we've  noticed that Google Apps Script is a superpower   and allowed us to glue services together for  the organizations that we service. [Music] Hey everybody, welcome to another Google Workspace  Developer Spotlight. This time in the spotlight   we've got Cobry from Scotland, United Kingdom  and joining us today are Wiktor Jurek and   Lewis Conroy. Hey gentlemen, how you doing? Very  well! How are you Charles? Great, great, great ! 

So real quick guys let us know a little bit  about Cobry and what it is each of you do.   Cobry is a Google Cloud partner. We cover Google  Workspace and also data analytics on GCP. I'm the development lead, so I kind of oversee all the  architectural programming, and development things   that go on both internally at Cobry and also for  our clients. So kind of virtually alongside   me below, left, right we've got Lewis. He's one  of our Cloud Architects and the reason we've   brought him on today is because he's an expert  in Google Chat apps. Let's jump right into it about  

Cobry! I think it's pretty awesome, I love some of  the work you're doing which is why we asked you   to join us in the spotlight. One of the things I  really love is your tagline "Bringing the cloud down to earth". I think that's awesome. What is your  philosophy around Google Workspace and in building   projects with it, and what are some of the projects  that you do for customers? "Bringing the cloud   down to earth" is a tagline that we took on back  when Cobry started back in day, I think it was 2013,   and that was purely because IT departments  and IT centers were usually seen as a cost   center within a business. Usually organizations  use fluffy language to sell their products and   things like that but what Google Workspace  allowed us to do as Cobry is really bring it   down to earth and make it really easy to explain  to IT organizations within organizations and   businesses. IT doesn't have to be complex  and complicated. It can be simple, it can be usable,  

it can be secure. Kind of bringing that cloud  down to earth. And what that allowed us to do   is, it allowed us to go into businesses and talk about  the cloud in a one-on-one perspective of   business leaders and organizations, and make  it really simple to understand and digest.   In terms of Google Apps Script and Google Workspace: the one thing that Google Apps Script done   for us as a business it has helped us glue these  services together that Google Workspace provides.  Wo Google Workspace is amazing in terms of  the products and services that it offers   but sometimes organizations just need something  custom, something that maybe isn't offered by default in the package. So early on in the  Cobry journey, from when it started to   now, we've noticed that Google Apps Script is  a superpower and allowed us to glue services   together for the organizations that we service.  So if there's maybe something that is a little  

custom, or a little tweak that needs to be made  to an application, or maybe we want to connect an   application that's from a third party into Google  Workspace we can do all of that using Google Apps Script.   And hence the kind of development part of Cobry was born. It all  started with Google Apps Script and an idea in  saying that "Hey, we can actually solve this problem   for a client!" Not by going out and buying  a new tool or not bringing in a huge development   team and and racking up bills on different other  cloud services. But actually we can link things   together using Google Apps Script fast and easily  as well. You just mentioned these custom solutions   for your customers that you would build. Is  there any specific project or solution that comes  

to mind like, I don't know, the coolest, or  the most challenging, or, I don't know, maybe the  weirdest? So in terms of solutions and projects  that we've done with our customers this one's   kind of boring but it comes up all the time. And so  there's there's a lot of times where organizations, for example, need a way to update data in a  third party system. And what they usually do is   they bring in a custom CRM solution or a custom  ERP. The most amazing thing about Apps Script  

and kind of the projects I get most passionate  about is actually building full services, such   as a custom CRM, on top of pure Google, pure Google  Workspace without any external services, without   any third-party applications. It's just pure Google  Docs, Google Sheets, Google Slides, with a bit of   Apps Script, a bit of Gmail. And you can actually  build a full CRM system just using those four   tools. Of course bringing in other Google Workspace  services along the way. So although saying we've   built custom CRMs and things like that maybe a  more of a boring answer it's one that's really,   really useful for us to demonstrate because it  really demonstrates the power of a Workspace as   a platform and I really really love that Workspace  is a platform because it gives organizations the   idea that once we have Workspace all that is, is a  foundation to actually building something that's   a lot more complex and more robust. So although it  might not be the flashy answer that you might have  

asked for I think is the one that kind of opens up  the most doors in terms of organizations minds as   to what is actually possible. I think it's   a great question because it proves that for a lot   of customers who use Google Workspace it kind of  like makes other tools unnecessary. So you can save   money by just using Google Workspace and having  a partner like Cobry build your custom solutions   based upon that. So I love the answer! Yeah, that  was a great answer. I love the Workspace   as a platform. That's something we've been saying  and I'm glad to hear somebody else say it back at   us. So we've been saying that  for a while now: Workspace is a platform. I think   we've got receipts about saying that back in 2014.  So I'd love to say that we were the first and I'd  

love to be proven otherwise. So one of the things  that caught our collective eye is that Cobry   has created a Chat app and your chat app is called  "Updateli for workspace". What was the impetus behind   that, and can you give us a story behind what it  does, and a little insights there? The reason that   we wanted Updateli was actually because Cobry  was growing. So when Cobry started it was only   several people and communication between several  people is actually quite easy. You can get together   in a group and a room and get excited about some  of the things that you're working on. And one of  

the key things within Cobry is knowing all about  Google Workspace. So Google Workspace updates are   pivotal pieces of information that help us run  our business. Now what happens when you bring more   and more and more people on? Well, what happens is  that little web of connections and communications   starts to kind of fall apart. It's much easier  to communicate within a group of seven than it is   to communicate within a group of 20, 30, 40. Wo we  had to think of a better way of us communicating  

together around Google Workspace updates. So Google  Chat, a lovely product made by Google again,   allowed us to bring in these Google Workspace  updates and create threads to discuss and   talk about all these Workspace updates, and maybe  tag in clients that think that update might   be might be useful for them, and things like that.  Now that was a bit of a manual process. Someone   actually went on the Google Workspace updates blog  and they copied and pasted the update in and then   that notified everyone and that was good. But that  took up time and what happens when things take   up time? "e try to automate them. So I rounded up  the dev team and I said: "Hey, how can we make this   easier for everyone within Cobry?". And very quickly  we said Apps Script is our solution here! So what  

we've done is we made a very small App Script  based on again someone else's GitHub project.   It was good, it was running really well and what it  done was took those Workspace updates off of the   blog and just dropped them right into our Google  Chat space so we could discuss these updates just   as they came in. It was really, really powerful and  we're still using it to this day. Now what happened   then is Lewis joined us. Again sitting virtually  alongside me. And we said: "Hey, we work with Google  

organizations worldwide that would totally love  to have this within their organization!". Because you   know, when we when we talk to organizations they  want to know what updates are coming out that suit   them right. So we say: "Okay, let's make this public!".  How are we going to do it? "e're going to try make   this a bit more scalable, a bit more usable. So  we migrated off of Apps Script onto the Google  

Cloud platform and Lewis was the the main brains  behind that. I guess it was really just sort of an   internal initiative and then it sort of evolved  into something that we thought could bring value   to other people. And so we got together and using  the tools that workspace and GCP provided we were   able to bring it to life and share it with the  world. Before we move on, where can folks sign up for Updateli?

Is it freely available or is there a fee?  Tell us a little bit of background. I think is a   great tool by the way. Where could folks find one?  Updateli is on the Google Workspace Marketplace.   So if you're in Google Chat you just go into the  the plus icon. It might have changed by the time   you're watching now, but you add a bot, you type in  "Updateli", and you'll be able to locally install it   onto your space directly within the  Google Workspace platform. There's no fees, it's  

completely free. All we want to do as Cobry is help  other organizations get the most out of the Google   Cloud technology. So we made it free and available  to everyone worldwide. We actually have a lot of   schools using it, we have a lot of non-profits using  it, we have a lot of organizations worldwide using   it. And it's only been out for a couple of  months so we're really, really happy to see   the adoption of the application basically  without any marketing. So it's

very clear for us that people are finding value  out of it. While we're on the topic of Chat apps,   Cobry seems to be innovating a lot around them  by creating custom Chat apps for your customers.   What's behind the momentum? Why have you selected  to build on Chat and what are the problems that   you're trying to solve by building on  Chat that helps your customers out.   We come across three main problems when it comes  to organizations using applications or systems.

One of them is application  blowout and that's kind of maybe a Cobry term.   What we mean by that is organizations that say:  "Oh, we need to solve this problem, we need to solve   this problem, we need to solve this problem." And  then you have three separate applications solving   three separate problems. That's great because those  problems are solved. But what ends up happening is   when you have too many applications things get  really confusing, and notifications everywhere.   You have to access these applications across  multiple different websites, multiple different   SAAS platforms. It gets confusing for end users, you  introduce friction into your organization, and  

that friction is a lead problem of just employees  being engaged. The way Chat apps fix that   problem is by bringing those notifications down  into a centralized location where the user is.   And that's really important: where the user is. If  you're an organization on Google Workspace you   will be using Gmail, you will be using Google Chat.  So when you have a notification center that sits  

within Google Chat what that allows you to do is  that allows you to have a centralized notification   store. So your employees don't get bogged down  by going to tens of different platforms to stay   updated on the work that they're doing which is  really, really powerful. The second kind of pain   that we usually see in organizations is that  love using chat apps is information access.  We're talking about FAQs, documentation, how do I  do this. And actually who kind of pioneered this   is Discord. When gamers in the Discord channels  usually created bots within there because a lot of  

people ask the same questions: "Hey, how do I do this  within the game? How do I do that within the game?   How do I engage with this community?". And a lot of  people made bots to answer those simple questions.   And what we find is that kind of methodology  is trickling over through into Google Chat and   people are creating Chat bots that help people or  bring information to the people. Whether that is an   FAQ, documentation, or things like that. And kind of  the third use case or the third problem that Chat apps solve is supplementing data into systems. So again,  this kind of ties into the application blowout and  

bringing the the application to where the user is.  But not from a notification perspective but from a   data entry perspective. So a lot of organizations  see an application as a back end and a front end.   Usually that front end is a website that someone  accesses or a locally installed app. But what we  

can do, is we can actually create kind of like  a second front end to an application, that being   through Google Chat. So maybe the most common  patterns of data entry within an application   you can actually do that through a Google chat app.  And again, that just increases the plane in which   a user can access these applications. And again it  brings those applications to the user, especially   with the most common use cases. So those are the  three kind of most important ones: it's the  

notification overload, the information access,  and number three is that data entry piece as   well. Usually we feel like we can bucket Chat apps  into one of those three categories. I was wondering   Wiktor, what you've just described is actually  something that any Google Workspace customer   will want. Is this something that customers know  of? So do you have like loads of customers lining   up all waiting for you to create a Google custom  Chat app? Or how does this usually work? This is   very much an education piece. So we have account  managers with our customers and our client base   that directly go to those accounts and those  organizations with that sort of chat. Pardon the pun. And they say: "Hey, Cobry can build this for you!".  And very often our conversion rate is very high   in saying actually let's talk a little  bit more about Chat apps. How can we bring our users  

closer to the work that they're doing? And that  starts a conversation and that maybe starts a   development journey. But the kind of second  educational piece is the kind of marketing piece. A lot of organizations buy Google Workspace  and still don't use all of its features and never   mind custom developed Chat apps. So it's on us  as partners to make sure that our organizations   around the world using Google Workspace A) get the  most out of the tools they're already buying and   B) know ways that they can extend on those tools  through custom applications such as Chat using   Apps Script or other means. So it's very much  educational piece for our current customers. We go   to them directly and they love us, we love them and  they're usually very receptive to our conversation   around this. But secondly there's millions of  organizations that we don't have direct access to   that we just have to educate through other means.  Okay, so I've noticed on your website you've got a   great post called: "How to over engineer a chatbot  on GCP". In the post you cover Chat apps, how they  

evolve through the development process, how they  grow, how you can scale them to the right fit.   Can either one of you jump in, perhaps Lewis. Tell us  about your approach on building Chat Apps and   how you see them evolve. Kind of the support  behind that article. For the particular   Chat app that this blog talks about, that sort of  started as an internal initiative where people had   this idea for a Chat app but they didn't really  know exactly how to go about it. So it took some  

sort of research into figuring out exactly  where are we going to start with this thing.   Obviously, you've been talking about low code and  pro code solutions with AppSheet and Apps Script.   So you know there's a bit of play to  decide where you're going to start with this idea.   And so obviously with Cobry we've got really  talented development team. So we said: "Okay, let's   do an App Script!". So we had the sort of internal  Chat built-in Apps Script that was just sort of   used internally within Cobry. After a while we sort  of realized: "You know this thing is actually pretty  

useful!". We were using it all the time and we're  getting really, really um interesting discussions   coming up on these Chat threads. And we said,  you know maybe other people can start to   use this. But there's no way that we could keep  it in Apps Script! Apps Script is very much a   sort of bespoke type of thing and when you start to  get too many people to try to use this thing   it's just sort of not scalable enough. So we  took that idea, lifted it up to GCP and we built it   out of Cloud Functions essentially and a Firestore  and shipped out into the world. It was a pretty  

minimal implementation really, you know, that  sort of evolution from Apps Script to GCP can be   quite neat and tidy due to the nice APIs that  you get with Workspace line up very well with the   code libraries that you get for programming  languages like node.js, and things like that.   So this sort of evolution from an idea to: Well,  is it going to be Apps Script? Is it going to be   AppSheet? Maybe we go straight to GCP. "e landed on  Apps Script and then the evolution, as we realized   that okay we're gonna have a lot of people using  this thing, we were able to evolve that into   Cloud functions on GCP. So I have a question for  you Lewis on that. You mentioned at a certain point   Apps Script may not hold its weight. Do you have  a good sense on when you would iterate with Apps  

Script? Like this project we need to see so many  users, actually feeling that this is a good thing. We can kind of prove that concept out before we  invest doing it fully in GCP. Or is your inkling   now to say maybe we start more projects just  on the GCP side because we think we've got the   concept proved out and we just want to do it one  time. It's kind of a case of intuition really.   You can tell when you come up with an idea you  can kind of tell what its purpose in life is going   to be. Whether it's going to be applicable to a lot  of people or not. So for instance if it's just a   sort of internal app and you're only going to use  it in your company and your company's not that big   then you'll get away with Apps Script just fine.  But if you start to realize that this app has   potential and you think that other people might  be able to use it and you think that you're gonna   have to scale it then it's a good idea to put it  in GCP. But definitely Apps Script has its place.  

There are a lot of apps that will happily  live in Apps Script for their whole life and   they'll get by just fine. But there are certain  cases where an app might have potential to grow or   might have a potential to be used by a lot of  people and it's just having the intuition to   figure out early on whether you think that'll be  the case or not. But again, as I said, it's not even   too difficult to move from Apps Script to GCP  because a lot of the sort of code that you   write lines up really nicely on both environments.  Now that makes sense and I think, obviously,   since you guys have been doing it for a while  you have an expertise and you've got a, you know,   litmus test it where "Okay, yeah, this feels right."  If somebody wants to try to build their own Chat App,  

I mean, obviously they can call you guys and  bring you in and have you guys help them. But if   they want to start their own journey is there any  best tips, guidance, places you tell them to look,   you know best practices you learned the hard way?  Anything you could tell them to help them kind of   uplift and do this on their own? Once you've  sort of had this idea I definitely recommend   sort of peer reviewing it with someone. Saying:  "Listen, I had this idea. "hat do you think"?   Brainstorming a little bit, bring it up a little  bit from a simple idea into a sort of viable   decision. And then it's a case of looking  at your team, looking at your skills to determine   where this idea is going to start. You  know AppSheet has a brilliant Chat app   functionality. It's just coming. So it might be a good idea to start there with this idea where  

you don't need to write any code at all. It's  completely no code. If that's the sort of skill   set that your team has then that's a great  place to start. But if you've got some coding   experience, and you've got some teammates that  know how to use Apps Script and read documentation, stuff like that, then you might  end up with a much nicer solution in Apps Script.  

So it's really just sort of taking a step back  before you dive in and just determine: okay, who's   going to work on this app? What's it going to do?  And who's going to use it? And then you'll   be able to get a really nice picture of what  the solution is going to look like and how it's   going to happen. I think succinctly you  could just put it into three things: so take   inventory of your skill. Louis mentioned that. So  have I got developers? Have I got people eager to   take this into production? Take advantage of your  skill and kind of align that with how far you   think you can take this application. The second  point is take inventory of the the quotas and   limitations of each system that you're trying  to use. So if I'm trying to build a routing app   maybe I've got delivery drivers and they need  to find the most optimal route to   get between our warehouses. Is it going to be 10  drivers using it 10 times a day or is it going  

to be hundreds of drivers using it hundreds of  time times a day. Well, then you're going to have   to want to look up the Google Maps API to see  how many times you can ping a route search. If it's ten thousand times you're gonna  go away over your quota if you're doing it for   hundreds of drivers, right. So then you might want  to say: Actually we don't want to be using Apps   Script for that. And thirdly, take advantage  of how far you think this app is going to go.  

So am I going to be using this internally  only or would you actually kind of   sit down and think: Well, actually if I'm making  a routing system for my driver who's to say that   I can't sell this to my competitors drivers, or  or the world? And that's when you've got   to think of think big and think scalability in  mind. But don't let that kind of dissuade you   from failing fast. Updateli was born on a very,  very simple, very crude if I can say Google   App Script and it worked really well and and we'd  be totally happy taking that all the way to the   end of its life. But it's only when we decided to  say: "Hey, actually this needs to go global!" we   made the decision to migrate. And as Lewis said, we  kind of know how to migrate and we can do it very  

well. Google makes it quite easy for us. We have  defined migration paths from Apps Scripts to GCP   so we can make that happen. Of course it is a cost,  of course it does take time. But if that kind of pain of change is lesser than the  pain of same, then you just got to bite the bullet   and do it. And we can do it really well. You've  mentioned first of all Workspace is a platform   and I love that. You've also alluded to AppSheets  specific point in that platform. And Louis you  

mentioned that there's a new Chat app feature in  there which is super neat, right. Actually it's not   released yet but it's been previewed and you can  check it out where you can build Chat apps using   AppSheet projects which is super neat. So it  kind of democratizes the building of Chat apps   for anybody. I'd love to know from where you guys  sit as experts on building on the platform: where   does AppSheet fit in? How do you position it  with customers? "hat's the discussions you're   having around it? When do you use it and frankly  when do you say we wouldn't consider it? I'd love   to get that expert opinion. The main thing that  we see when it comes to proposing AppSheet to  

our customers and then our marketing and our sales  is that AppSheets a wonderful platform.   For that number one point, having the programming  skills, organizations that don't have those   programming skills anyone and literally anyone that can, you know, point a mouse and   type on their keyboard, can create an app using  AppSheet. And the wonderful thing about that is   once you're on an AppSheet license you can make as many apps as you'd like. The way we   like to position it is it's a wonderful platform  for putting a front end onto a back end. And what I  

mean by that is organizations usually have systems  and processes that are really spreadsheet heavy   and there's a lot of manual typing and very little  validation. It's kind of like it's technically   an application if you've got all your things all  your processes running in a spreadsheet. You're   just using a spreadsheet as a front end  to that application. But what it actually does really   really well is help add a nice front end to an  application running on spreadsheets. When it comes   to Chat apps, again, that feature is not out yet. But  the way we'd see it is in Chat apps is it'd be a  

very nice way to get you started with Google Chat  apps to fail fast, to iterate fast, and by the time   you've created your proof of concept and you've  kind of validated your idea. That's when you've got   to take the path from, okay we're going to invest  a little bit more into this. We're going to upskill   our team and we're going to maybe move it over  to to Apps Script because it's slightly more   customizable. It's slightly more extensible. But  with the migration path between AppSheet and Apps   Script we have migration paths for both AppSheet  to Apps Script to GCP. But to make that first hop  

it's kind of ironic AppSheet does have support  for built-in Apps Script. So the way we position it   to our our customers and say: "Hey, you're using AppSheet really well. But you know your processes   are starting to kind of hit the ceiling  of what AppSheet can do. What we'd recommend is  

actually start fiddling around with the inbuilt Apps Script editor. You should try setting up a   few functions that that help to get you where  you want to be." And then once we see the client,   the customer, the organization find a little bit of  comfort of running Apps Script on their AppSheet   platform then we say: "Okay, you've seen the power  of Apps Script. Time to move everything over, or   most of your things over, or maybe some of your  things over." But at that point you've made your   first hop. I think the one thing a lot of folks  struggle from is they don't really understand which  

tool they kind of pick or choose or aren't  sure what decision to make. And so you're right,   sometimes it's easy to make the wrong one and  think that you're trapped in it. So now I love that   idea of taking that approach and helping people  understand it. I love what you said, by the way, that   customers become comfortable in realizing that  this Apps Script thing is not a big hard thing   to learn. They kind of ease into it so that's a great insight. Lewis anything to add on?  I know your quote-unquote you're a full  stack developer. If someone asks you to work  

with AppSheet what are your impressions about  using a no- code tool solution.    Actually, it's a brilliant tool but I would say  the further you get from the metal, so to speak,   the fewer options you have. So AppSheet is  great for, as Wiktor saids spreadsheet based   applications. And maybe sort of create, read, update,  and delete sort of operations and things like that.  

And there are a lot of amazing use cases  for it. But as I said, it's more limited   as it's more sort of abstract from the actual  code itself. It just takes a bit of discretion   when we do say: "Okay, could we do this in AppSheet?" It's like: "Yeah, we could do an AppSheet".  

But you know the the road is not as long so  to speak as App Scripts. And you can only take   it so far. But as Wiktor said, it's possible  to move from AppSheet to Apps Script. So there   is no sort of pigeonholing when you do decide to  choose AppSheet. You're not getting stuck in   an AppSheet. Like it's very flexible after  all. And in terms of an application's life cycle,  

sometimes the application is totally fine living  on AppSheet. You don't have to move over. That   might overkill. Your your business, your  organization might be entirely happy running   a process or a system entirely on the AppSheet platform. And it does work for hundreds and   thousands of organizations around the world. So  we're not saying that it's only the start of your   journey. It could totally be the end as well and  you could be entirely happy and better for it.   Let me ask you a question: you guys obviously have tons  of expertise, you've actually thought about these   things. If folks wanted to connect with you whether  they're in Glasgow, Scotland or anywhere around  

the world. What's the best way to actually engage  you guys? The best way to get in touch is through   our website. Go to cobry.co.uk/start- your- journey and that'll take you   directly into a meeting link. And if you've got a  development problem, an App Script problem, you want  

a Chat app made for you, that will go directly  into our um Dev teams calendar so you can be   speaking face to face to meet with me veryy very  quick through our website. If you don't want   to go through that we're also very, very active on  LinkedIn and we're all open to connecting. So   you can either connect with me myself, Wiktor, or  Lewis who is kind of sitting virtually beside me.   Those are the two best channels to get in touch  with us. I also noticed that you're hiring. You want  

to shout out for what you're looking for  and how you expect to see the company grow?   We always have an always hiring model and what that  means: we are always looking for talented people   despite what it says on our on our job board. If  you're a developer, if you're a marketer, if you're   a salesperson and you like your vibe, you like  what we do, you like the way we talk totally   get in touch with us. It's an always hiring  model and what that means is if we think you're   a good fit and despite the they're not being a  job out there we're totally open to having that   conversation and giving you a space or making  you a space at Cobry. Our growth plans are  

high. They're very ambitious so if you do  think that you're going to be a good fit and   just based off of this conversation or what you  see online please do get in touch no matter   what you do. We love to hear from great people no matter what your position is. On your website   we've noticed this um Cobry towel. Tell us what's  it about and how can you get one. Oh, brilliant you   found the easter egg! So if you made it this far  into the video get on our website, scroll right   down to the bottom of our footer, and it says "Do  you want a towel" and you can click on that. There is   a backstory behind it and the backstory is a long  story, but long story short, we were ordering merch   a while back and someone at some point clicked  the towel button and got intrigued and ordered   a whole bunch of towels for everyone at Cobry. We  have too many towels and actually our clients love   them. They think they're brilliant so if you found  the easter egg, if you've made it all the way to  

the end of this video go to our website, scroll  all the way down to the footer, click on request   the towel and you've just got to give us a good  joke. If we think that your joke is good enough   there may be a chance that there may be  a Cobry towel coming your way. [Music]   Can't hear you! So let's see if I can get a  joke...here wait a second: Why qualify for a  

Cobry towel if I want to go to the best beaches  in Scotland? "as that the joke Charles? [Laughter]

2023-01-12 19:57

Show Video

Other news