From Developer to Entrepreneurship - with Dmitry Zhifarsky

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
today I brought to you a new guest we're going to discuss on a different topic that so far we discussed in this channel I really excited about the discussion and hope that people listening will be interested in my story and the experience you've been employed but then at some point you turn into an entrepreneurship tell me about why did you left your job and then started a new business by your own this was one of my first experiences with static code analysis and I really like the idea that you can help other people dark code metrics that's what you call and then you turn into a product right now what was the biggest challenge here the developer community and developers as you target audience are very different from what people can use to other domains developers I think in my opinion they don't buy emotionally they don't watch ads they block [Music] ads welcome everyone to FL original today I brought to you a new guest or a guest we're going to discuss on a different topic that so far we discuss in this channel it's going to be about entrepreneurship it's going to be about how to shift your life from becoming a developer to an entrepreneur or having a product and selling the product to developers today with me I have Dimitri how's it going Dimitri how's your day so far hi thanks uh first of all thanks for having me I'm really excited to discuss this this topic as I've been doing it for like a year and a half I think at this point and yeah I'm I'm good I'm really excited about the discussion and hope that people listening will be interested in my story and the experience and they find it valuable at least to some degree so D I know you for a couple of years especially since flutter is around so you are a good friend of mine from the flutter community and I've been following you and I know that you've been doing some open source project you've been employed but then at some point you turn into an entrepreneurship like an entrepreneur and having your own business tell me about like what has happened like why did you left your job and then started a new business by your own I think it all begins when we actually created the tool I'm working on basically my fulltime right now called DCM I think it all started when we first created this tool and I work at right and this was my one of my first experiences with static code analysis and I really like the experience and I like the idea that you can help other people highlight issues for them help them pay better code avoid like long discussions on in pool requests because the tool kind of covers and since we started the tool at trke I had this idea that the tool always felt to me like it can do a lot more and better and it actually can be at its own product let's say featured product because at at some like first version of the tool it was just showing six matrics then we added rules uh VI the analyzer plugin API then I and the person who also like created the tool let's say I am not the first person who actually come up with this idea try to create a tool the initial author created the metrix part and then I joined and helped develop different rules like member ordering rule I think it's now like three or four years old something like that and the standard Dart analyzer does not have a member ordering rule like to sort your classes Fields Constructors automatically like can highlight to in the order of them their order and uh I think uh at the point where the initial author then I left right I had this idea that I actually don't want to leave the tool behind I think it has greater potential and we took the to with us and living made it publicly available open source like not in the right possession ownership at in our ownership and publicly available and then I started working on it Mo I think mostly most of the time in like weekends evenings and at some point when I was really unhappy with my at that time job I worked my last job was about I was at from team lead in a browser product the browser was is still called sidekick and I was leading the frontend team there I was not really happy with how the some things were going inside the company and that was like the point for me okay and I sat and said to myself I think this is the time I need to try to actually make DCM a full featured product to put my best effort to put all my ideas and love into the thing full time and see how it goes so I guess that was the point where I said okay now I'm doing entrepreneurship fulltime let's go interesting dark code metric that's what you called your package at the time or it was the name of the package and then you turn it to a product right now so Dart code metrix and about the name actually it's now I try again before that it was an open source project and now it's a paid product uh the name also evolved and I think the community kind of accept accepted the new name I and people who use it usually call it DCM just DCM because it's simple and I think it's the same story of npm because node package manager be as a long name became an npm and DCM is also dark metrix became DCM because it's simpler faster and easier to remember and luckily I had an opportunity to uh get the domain name for the tool it's also DCM and it's kind of aligned really really well with the idea to shorten the name so it works like it it's called that is the current name let's say that so you had this product as an open source package and then it turned into a p product how did you find this transition like your customer your community so probably there been there have been some people using the open source package what has happened over there how did you manage this transition first of all the IDE the decision was really hard because this type of decisions can actually kill your product at all because people would just leave but I think the need was there the need for a tool like that was there and I think most of the people understand that open source from individuals especially is an unpaid job and takes a lot of effort to support to maintain the project to speak to the community to solve their issues to help them most of people understand that it's a basically full time job for a lot of people who work on open source and they have no problems with actually paying for the job if it's beneficial for them if they see the value from the tool they are open to as from my experience at least I see how people actually and a lot of people supported the idea that the tool becomes paid because they see more value in it existing than in it just disappear that is actually the interesting part like many developers many software Engineers they throughout their career are probably they are maintaining some kind of project or they're building some kind of you know open source package and so you took a different approach which at least I haven't seen in the or maybe I haven't seen it there is maybe some examples but many of these open source maintenance they start like promoting for sponsorship for the package right because as you said maintaining a package or like a software in open source software well that requires a lot of effort but that doesn't really work in many cases so there are some cases that it works and there's lots of users and you know people are supporting the authors and they're getting like paid by sponsorship and developing that but many cases open-source support is failing and I see that you learned from that and then you started like diverging from somehow open-source free software to a paid but higher quality maybe first thing first is this a paid a paid product is it still open source how did you manage even like from an open source project going to a paid project completely and maybe close the source code how does that work yeah it's also a closed source project right now yes I mean partially we have some like GitHub actions is GitHub actions both of both of our actions are open source and some things are open source but yes the core of the tool is close Source now so I think I will start with the idea of sponsorship because I thought a lot of on how to actually do the thing the right way the way it will work both for me and for the community because I think the core idea behind the DCM is I'm trying to help my customer as much as I can and I care about them actually and I'm trying to provide the solution that works both for us both especially long term tool stays the tool is available and the people are happy and they the price is fair and they can actually access the tool I'm trying my best here so and I start sponsorship I think the sponsorship so idea my idea behind DCM is that I actually want to have a team working on it I think it has a lot of potential it can grow that big that it can actually be developed in m not say word maintain say developed by a team team of people doing the different things some of them will be developers some of them will be doing marketing some of them will doing customer support Etc I think the team behind the tool will be the best place to appear one day and I'm working toward that goal and for that uh idea because again I don't want to be the boss factor of the tool long term I want other people to work on the tool so that I'm not the blocking so if something happens that the tool is still available to the community and people still can use it and so and for that approach the problem with sponsorship there are I think two problems first of all that TCM is a client side project product and the tool Works fully on the client side and for client side it's really hard to make an open source to paid and client side because it's very easy to copy the client side to write on your client side because there are no back end dependencies and you just to fully use the tool without caring about it it's paid or maybe has a close Source li like not open source light there are I think in community the open source word is kind of means both available and you can use it how you want and there is another term for Source available tools so DM is not Source available either because again you just can copy even though the license will can be potentially prohibiting the copying you can just copy and nobody will know for example for big companies that won't work because they have a really strict process on approving dependencies on what they use what they can use and they there can be legal consequences for them but for small teams and I think the art and flatter Community mostly small teams at least at this point I see that the number of smaller small teams is higher compared to large Enterprises so and for them that won't be copying won't be a problem let's say that and that's is really a problematic problem sitation to be in because I'm not doing like paid projects because I want to get rich from it that that's not the intention the intention that I treat money in this case as a like way do things you want to do and I want to do the tool I want to like be better I want people to have the best experience from it and for example The Source available approach was chosen and then nobody would still be paying for the tool that would be a catastrophe and it wouldn't work so that's and for sponsorship separate the second problem with sponsorship is that people decide themselves how much they want to pay and when and that is very unstable you cannot really predict how much fuel you'll actually get from people who use because they one day can decide okay now I'm not paying I'm not using the tool or I decided I don't want to pay anymore but whatever reason they have and this is legitimate reason but the problem with the whole approach is that it's unstable and building something trying to build like a product like DCM in my opinion on unstable ground is really a bad decision so that's I think the main two reasons why the open source and sponsorship models or Source available plus op plus sponsorship models who like left behind because I think on a longer on a longer like timeline it just won't work in my opinion again I haven't really tried that and I don't know how things who have happened but let's say that in how I modeled it in my head I don't see this solution to be stable enough to really work work out so let's take a moment and talk about the product itself for for those yeah go ahead I think you actually asked about the transition from open source to close Source I can also also talk about that if you want this whole transition yes why not maybe I can repeat the question okay so that's interesting but maybe just touch one more time how did you manage this transition from an open source to a paid product so initial idea was that open source and closed Source tools uh will coexist together so I will spent less time on the open source thing and give my full attention to the closed Source just supporting the open source too and that was the case for like six months and I realized that people actually still getting the support still getting the their tickets resolved with open source didn't see really enough reason to kind of switch so at some point it it became clear that if post version exist and they boths get like attention and people still don't see the reason to transition that won't really work well again and I think after 6 months again the difference between the open source and close Source projects was already really far the people who tried the close Source version they they even felt like how different they were how the close Source version was more advanced it has it had for example it still has DCM fix that fixes your issues from the console in one goal and I think users always say that it's really fast I think it's three times faster than Dart fix for example because it has different approach and so DCM fix was available improved and used code and other commands I think when it when I discontinued announced discontinuation process of for the open source version I think the tool has either like two times more rules or like two and a half so it has a lot more rules and they also are very helpful ET so people saw the difference and I think those six months actually a good like buffer to start the disc continuation and that people were seeing the difference and they were happy to actually pay for that difference and for the support and to use the tool longer later on because again DCM in its core helps people in my opinion again I'm sh how I see it some people might have different opinion but in my opinion I think the tool helps uh people be more productive and helps them actually like enforce better coding practices without or like agreeing on a common sense and then they will be like the common sense again gets violated because someone for got someone got tired and forgot that they agreed on something Etc so it helps people be spend less time on the things that can be automated basically you can just delegate all these issues to lter that will that will check automatically and you'll get the code after the lter that is that requires less a lot less of your attention than before L and that is valuable for them and that's why they actually invest in basically in the tool and they happy with it and so as I said 6 months uh after six months I decided to discontinue then I announced it was really hard decision to announce that to say people that's the time where the free version goes away the open source free version and I wrote an article I think I just sat and said to myself okay what's the reason why I'm discontinuing the free version and I just tried to explain to people to every everyone who would be interested in reading the reason and I basically said I want to do it for as long as I can and I need your help to give me this opportunity basically because it's a very core you cannot you need place to live and food to eat right you cannot just do things you want to do without that and that's the core of it and if and having that allows actually me now to just work on the tool and that was my reason behind it is just if you want to still be available if you believe in the value if you see the value my goal is just to build it for as long as I can provide you the best service and let's go from there some people of course stopped using it some people still use the free version because it's it's again it's available it's is continued it's it's not getting any updates but some people still have access to the tool they have all the commit history they have they can basically Fork it for example and change something if they want and it's it's Avail it's something that I can do because in the worst case scenario I could have probably I don't know Force push the whole history so that you cannot goow back to some D for example put a license that would prevent anything at all the LI any usage for example at all and people would have appeared in a very different let's say the two would be in a very different the open source free version would have been in a very different position but I decided again for people who want to put the effort into support in the tool themselves the old version it's your decision I cannot make it for you if you're willing to do that if you don't see enough value in the new version sure like use the tool it's available and if you want to migrate to a newer versions and support I mean to the new versions of the analyzer API if you want to like continue supporting for yourself like sure you are not limited in that uh area so yeah uh let's take a moment here and uh talk about the product itself because we're talking about a product that as you said if there is an open source package right now and you can start probably forking and continue evolving that right but you turn that into product let's take a moment here and talk about the product itself dimitry so tell us what really is this product that is different from other product in the market and I'm like why now I need to pay for this product rather just going to the DCM open source and Fork it and maybe add more rules like tell us about you know the product itself okay sure I will start with the Forin thing so the tools are very different like the old open source version and the DCM the close Source version are very different from each other first of all the old the open source version is based on the analyzer plugins API which is unfortunately very unstable and has some sometimes very very bad performance issues that are still ongoing like people still bump into some issues with them and that's the I think the main problem and that's actually one of the reasons of the transition initial because uh living on that API is uh for people who use the tool they usually thought that it's DCM which is was slow but in reality the API was the core issue so and I think it has 80 or 70 rules and I think it has about four commands something like that and the new version I think with the latest release it will have uh 300 rules not 70 or 80 but 300 rules built in you do not to create them yourself spend time maintain them use the analyzer API because the new version also is a standalone analysis server fully featured analysis I mean it's very close to what you have is D but I've managed to remove something like 880,000 lines of code from it to optimize it for the the linting part to make it do less for other thing and do it do more things useful things for the linting so I don't use the analyzer API actually I have a fork of an analyzer that has like a lot of code removed from it and I also have more access to to change the the like the implementation of the analyzer for example DCM fix works that way because I I've changed the implementation of the N which I cannot do if I've just used the the package that the Google provides right so GCM is based on a different type of Technology let's say that not the plugins and that makes it faster more reliable and gives you better user experience so 300 rules better user experience performance Etc I think right now it has 10 commands something like that and all the commands that are available in the free version are now like a lot better for example than used code command was only looking for top level declarations classes methods classes extensions uham Etc top level but now the command that is built into the GCM searches for Fields methods Constructors and uh shows you way more info on then used code and I'm also experimenting these things like integrating the unused code public unused code highlights into the ID it's now in beta you can just tick the the check mark and the plug-in with code extension or inj under Studio plug-in settings and DM will start showing you publicly unused code in real time yeah so that's also something that's possible and again as you said market and other tools I think DCM is one in its class tool at least for D EOS system because no other tools actually provides provide what DCM provides there is no other tool to search for used code unused files unused localization no other tool that gives you unused code integration in ide uned files also also because I I think I've added it like recently relatively recently unused files and other commands like parameters analysis fidget analysis metrix even though the metrix is a part of the name metrix actually not a core feature at least I don't consider and many users don't consider the core features the core featur is usually the link rules and uh commands in general so different commands again metrics wigets analysis Etc no other tools give that and then we go to L rols that I think that's the closest I'm actually not think I don't think that Dart analyzer I don't treat the Google team building the analyzer as a competitor to any degree I think the is an extension it's it's an additional set of rules that helps you even have even more checks and to cover the things that the dart analyzer does not cover because in general in my opinion again and from my experience it's important to say because some people might disagree I think that Google builds the tools mostly for themselves at least their first customers is their teams and everything that does not really match their view or their needs gets lower priority you can I don't know that's what what I kind of see through the years and that's I think where DCM kind of kicks in because I believe that user experience should be like the first I basically build the tool for others because again the only Dart code I write is DCM itself I use DCM on DCM of course but I don't write flatter apps for example I build the tool but the everything that TCM does for example for flatter and I mean to some extent like the dart flatter are very intertwined let's say that it's all for other people I can have rules I can have and maintain support develop improve ET rules that I even don't think can help me but I know that somewhere there a team there is a team or many or more teams that actually think that it's useful and that is for them not for me so it's it's kind of different approach different mindset interesting so now we're talking about the product so probably so far many have this question I have this question how did you turn a client based product or anos package to a server side or like closed code somehow a product it's not s side it's analysis server but it's run on the client so no code is sent anywhere it's the same how the analyzer data analyzer works so there is server that is on the client let's say that analysis server oh I see okay I I thought that maybe when you close the code actually you moved everything to a Ser there's no such things okay that's interesting yeah yeah the thing that you're talking like that's I think how sonar Cube Works they have a CL like they have a separate instance that handles the analysis the same Works closer to Dart analyzer and it's all fully on on the client side it's called the server because it's a separate process that analyzes request but yeah it's it's a client side server that but then uh technically that means I have access to some code in my client right if I install this package then I can dig into what you've done or maybe you obfuscated and there a lot of things that I cannot figure out it's a compiled executable so it's not that easy to requires a license to work so I mean to some degree anything can be anything can be yeah yeah everything can be reversed engineered and any agreements can be violated and it's social construct right that you not allowed to uh RSE engineer other people work it's just social construct you can do that if you have but uh it also requires a license access to the to the server that is my backand part that verifies that the license is active and that you can actually access the features Etc so but all the analysis is done locally and I think it will stay that way because I think it's this experience is SL like to what D developers and use to be honest DCM building DCM I think it's important to provide the user experience that is very close to what the analyzer provides because that also improves the on boarding where people kind of it's easier to for people to get started because they already see the same similar patterns that works in a very similar ways so it's important to keep the experience aligned because that's I think works well for everyone for the users and for for the team behind right now it's me of course liit entrepreneurial Journey so I have done this in my life in the past and I know it's not a very straight way to go it's a lot of bumps one day perfect and many days so bad yes so tell us about this journey right now so how do you feel how is your life as an entrepreneur I think I've heard a very good quote that entrepreneurship and score as if you have announced a party like cooked food like invited all your friends and then nobody came it's like this feeling of you working hard on something that you think is important that everyone will enjoy like having Etc and then nobody kind of and you just put lot of effort into basically thing that other people haven't even noticed let's say that so yeah I think it's very I think that entrepreneurship is in is in core is a test of your will like mental strength strength and willower because there will be always hard decisions there will be always uncertainty there will be always like this pressure uh from for some people it's for some companies cases it's competitors for some it's like some internal beliefs and uh that create pressure additional pressure for you so I think it's uh in general not easy but from what I I think is also important to understand that the hardest part is the beginning once you start working it you can actually I think I've said it in some other time and when people ask me but some people need experience to get started so that they know how to do thing and then they can do thing and other people need to get started to get experience and I think the entrepreneurship like in it's again another part of it is that you need to get started and then figure out how to do the things so so you can just pick any and of course it's a lot of risk it's a lot of risk to for you to like pick a random IDE and try to implement it Etc and you need to kind of measure and understand why people would want to pay for it will there be an audience will you be able to maintain it will you be able to stay long enough working on it because what people usually what startups generally after that's a product Market feed right they want to find the Feit for their product but what people don't really kind of consider that there should be a founder market founder product F that you is a founder a person working should be able to enjoy the thing that you're building despite all the problems all the like bad days Winters years of no success you should you should be able just to enjoy the process that much to overcome all to be able to overcome struggles through that also it's it's another important part okay you mentioned three things which I want to maybe again repeat it one is you need to believe in what you are doing I think you had this already you mentioned even during this interview so far that you believe that there is potential in this and you also genuinely kind of liked what you've been doing so then you turned your hobby project Your Pet Project into somehow a bigger project and then at some point turn it to a product which is interesting and the second one which you mentioned also a couple of times during the interview so far is you need to do it you need to start so taking action is different from thinking planning my wheels my uh Ambitions or whatever at the end of the day if you don't do it you're not going to get anywhere yes so and you did it like there is I was actually listening to a podcast recently where one of those people in the podcast said you know I really want to fail on something that I tried and I truly believe that it was a good things and I actually tried and I failed that's a better feeling than job not doing anything and then later regrets why didn't I do that and you did it you did it and now you are a founder are an entrepreneurship you are building a product you are actually getting to a market you probably learned a lot of Marketing sales CEO you know task and maybe some nights no asleep maybe some days back pain or a lot of things like that which always happens but I want to ask you right now so you get to this journey I don't think there is any way back and you're not giving up and you already not gave up so looking ahead how did you see your business growing what's your ambitious what's your goal how do you want to make sure you're moving forward in a way that you grow every day so what's your strategy here so yeah you said about the future plans but they'll also a comment on what you said before about the idea of failing I think even this software we have it like all the time we know a lot better what things you should not do then what thing you should do and with entrepreneurship it Al it kind of goes the same way that the more time you try the more iterations you have you better and faster learn what you don't need what you should avoid what you should do better differently like with software we say don't do like Godlike classes that do everything do something else and it's all it works the same with uh I think but increased double down let's say way effort I don't know what was the best way to describe it so it's like this idea is kind of getting maximized let's say so that you needs to try as many like try try try try and then you will find the way and yes and taking action is important and uh I think it's really it's what what really separates you from achieving the your goal because as I was saying before and I forgot to continue on that forgot the initial thought that the first time is the hardest time first like time before especially getting the first paying customers because this time you need to avoid as much self-doubt and just try different things try to find adjust pivot ask existing users or potential user what this is valuable what they need what they're missing just try try try and this is the hardest part and going through that after going through that with iteration process you find what actually works or you understand that it doesn't work and you have a clear understanding of what to do like next whether to continue or to else because uh people have this also idea in mind that they know like they have some thoughts or ideas and that if they see the words in this way that's how it will be so for example people will say okay I think this idea is great but nobody will buy it in reality you don't know sometimes you can just let's say accidentally or luckily find that what you were actually like interested in yourself and thought the people will use and buy that they actually interested in that and you can only find that only if you try because all you like send abstract castles in your head thinking hm whether they buy or not the reality gives you the real answer to that until then you don't know in reality you just don't know and I think most people stop in thinking and just give up give up and you need they actually need to try so that was maybe an extended comment on your thing fully agree that you just need to try even if you fail you'll learn and you will just be able to move on and to adjust to improve at least and yeah about the plans I think again as I mentioned I would be very happy to have a team behind the tool so that different people come share their ideas share views how they see the tool also going because you not only have the customers who share that often I I have a lot of people who talking to me what they miss for is not working what can be improved and it really helps it's like it's a huge source of inspiration but also having people like with you like in the same I would not say room but in the same like behind the same idea helping helping the developers right also gives you ideas on what can be improved and so on and I hope that uh first of all I think the next big step is people Define product Market feed differently some Define it where the like certain number of error some people Define it through like when people are not leaving Etc there are different ways I don't think that DCM is there yet because I think we still need more users to actually decide whether it's a product Market fit or not I think one of the closest step is to go to product Market fit fine to understand that we are in the product Market fit to have a team behind the tool and then I don't really know whether DCM would be the only product for like that I want to build because the idea is uh somewhat more broader than just DCM I think the goal my at least goal is to help customers win in general just to help them win with their to tasks with their products with their customers because winning customers if they are developers they are happier they know how they they have less conflicts in the team they spend less time on cold reviews they spend less time on Turkey buxs they happy they build happier product like they happier and they build better products their users are happier their compan is healthier because they more users that are happy and uh basically helping developers win they helping companies win and basically helping the whole ecosystem win because uh when you see your competitor having happier customers and you ask how did they get there and one of the thing is that technology and you understand that hey I'm not getting the same level of developer tools for example for my team for my tooling and if I get that I will also kind of be able to move faster Etc so it's also kind of attracts more people being in flatter Community flatter apps attracts more people from different communities just they want the tool that works for them and helps them win so I think it's like I'm not sure if I was able to explain the idea deep enough but I think the community in the E system B starts with a very small things even one developer who makes the customers happy helps the whole ecosystem win and to attract more developers and to attract more users Etc so yeah I think that's the idea behind so I'm not sure whether DCM would be the only product but right now it's it is and I think the full focus on the tool for at least a few more years is required just to grow the user base help more people Etc I'm not preneur is the life of an entrepreneur is so sweet right now that you want to expand it you want to extend it to more products and building more companies and yeah I'm not you said well what's your long-term plans I thought that's how I understood your question initially so I'm if talking really longterm I don't know what the DM would be there but for the like for the nearest Future near that's brilliant that's brilliant that's actually what I wanted to hear and actually give this motivation to our audiences like those who are listening right now or watching us to see like you know you're going to try one product you see how it evolves but then you learn a lot and then maybe that product fails or success or whatever then you you you do the next thing that you want to do and then you do the next one and then you do the next one you know so you are moving and you are taking actions this is this is actually great this is actually an inspirational story that I'm hearing from you they were fantastic so far I bet you have many challenges I asked this question already like bumpy days and so on and so forth if you want to name one of the biggest challenges that you had as an entrepreneur like as a developer who turned into suddenly a founder and then having a product like what was the biggest challenge here I think it's the present challenge I would say the developers very different the developer community and developers as your target audience are very different from what people can be used to in other domains let's say that because for developers regular marketing that commonly used known marketing doesn't work developers I think in my opinion and from my what I see they don't buy emotionally they don't watch ads they block ad they kind of the audience that avoid ads by any like cost right they buy rationally they want to play these tools they want to like experience the thing before buying and that is a very different audience from actually the one of the core problems of why a lot of projects are not getting like paying customers because developers also not really into buying things so and that's one of the ideas behind the PCM is that team oriented company basically company oriented tool because developers on their own are very not into buying things I don't know how it appear that way but what I see and put other people lot of other people who building different developer tools for different ecosystems Etc they all say the same thing developers don't buy and that's just like the reality of things so that's again why DCM is oriented for teams because teams on the other hand they they and companies are businesses they understand the value they understand the productivity thing they understand that if their developer spends 2 hours on the thing that can be automated that's a wasted time that's time can be used to build the thing for their customers they see the value and they're ready to get the tool to get this value for developers that's another story so I think the one of the most challenges is actually uh to explain to developers because developers are also the audience to some degree because developers work in the companies right to explain to them the value to give them the knowledge and the H any help possible to share show the value to their teams to their bosses to their companies who actually make the decision about buying so that they can have the tool I think that's the one of the biggest challenges overall and it's really uh because of the target audience because of to whom you try to sell and there another like subsequent problem sorry there is another subsequent problem if I sorry if I interrupted you that developers also have this I wouldn't say this love for building things things themselves they can just I can build the thing myself I will just do it without using your tool and I've seen that and this is like a real thing and I'm also developer understand why it happens because Developers are really into learning new things you understand how it works but uh when it comes to teams for example uh developers uh don't really think in like money terms and for example when you talk about a company you say okay to build DCM it will take you x amount of money which is like 15 20 times more than paying for DCM so you might want to reconsider building your own thing just and just buy it for for companies that works they understand it they actually can calculate the full like spend but for developers especially individual developers they will just all build myself even though if they know that they will throw away their side side project in a week in a month or they will not ever finish it or they will get a worse result the idea of building is in their core and I understand that and but the challenge here is to show them that they don't need actually to rely on thems all the time they can use already built for them Solutions and benefit from them instead of like putting I don't know thousands of hours to just build the same thing that's another it's funny because I'm also a developer you know dimri we are also both developers right and you've been talking about this and I always uh like thinking myself you're actually right like when I see some products I can do that in two days and you know in developer time two days mean maybe a couple of years so yes yes that's another thing I'm asking like one thing actually another thing actually I was thinking I was actually right now thinking I was laughing about it is you been talking about like a developers going to like you know spend money on something or time or whatever and I was thinking like you know you're right I'm happy to pay maybe $200 for a keyboard and just have a noisy sound of the keyboard and say I have a mechanical perfect keyboard but then when it comes to maybe $20 per year product then I said no this is too expensive so yeah that's that's real that's that's very real yeah and I wanted to say that about building that you mentioned there estimation problem I'm also asking companies like and when your developers tell you the number to build the same thing remember how often they tell you their like the correct estimation numbers because usually unfortunately or fortunately that's not the case people developers are not really good at estimating things and and I also kind it also applies to me sometimes you can see that oh that will take like two days and you end up doing it like for two months or something just because uh the complexity tools like DCM show that you can hide a lot of complexity behind and it will look like very easy to implement to reimplement but in reality is hard for example people write cod in so many different ways and the rules that look like very simple there are so many different age cases and situations where just it doesn't work because of some small like difference in how people write and to cover all of that around your code base because you also have different people in your team you have different potentially have different teams that write differently and if you for example building L rules for yourself you need to understand that there are a lot of a lot of complex cases that you need to think otherwise the lint RS that you get they lint for something but not for everything and people like well I bu think I think that it works amazing but in reality just covers like one case or two cases and other just being skipped that's not the level of quality for DCM and I think that most of that is because of the community because the community the users they very actively submit bugs they show where it doesn't work and for rules that look really simple it usually takes like a lot of time to make them cover all different cases so even in case of DCM if people want to like build something of their own they are likely to very shortly find that to build a lot of rules that you need you will spend a lot of time building them and supporting them and finding all the edge cases that you missed because in my opinion having a link rule that works sometimes it's a bad rule because it gives you false like idea notion that you covered all of it but it's not it's not the case just skipping a lot of things for example let's take the rule from DCM that responsible for finding not disposed Fields if you cover only some cases other fields that you not covered and you have not noticed they will just be licking and that's not not a good thing so yeah the complexity and the estimations are part of it interesting so let's uh take a look at your experience right now as a developers uh entrepreneur and tell us also what listen as or what listens so far the biggest listen lesson that you you've learned from your experience you know things that you've been uh gone through and and now you have a better understanding like what is the biggest lesson that you learned multiple lessons actually one of them I think we have discussed before that the lesson of taking action is really important you just deeply need to take action because again your ideas might be completely wrong or completely right but the only way to see that is is to act so first fall is to act and to iterate to change to ask to talk to people like to just try to adjust it to its best best I think second lesson is uh and the practice that I try to apply I think I'm doing it well but who knows that you need to be very user oriented and show and do everything for the user for their success because their success your success is a product for them because they're your main audience and you need to put effort and to basically serve them so that they can solve their problems better and happy customer is a returning customer so you need to keep that in mind your customer happier customers basically means that your product is growing and succeeding Etc I think another also important lesson is that you need to choose your audience wisely because for example ifcm I think if I chose the individual developers and I see it very clearly right now that at least in the current uh model in the current packaging of tiers Etc individual developers don't have enough value to stay long teams they stay even if they have a monthly subscription and annual they just stay they see the value even though they have monthly subscriptions have unsubscribed like any time like like today tomorrow at any time they don't they stay it means that they see the value long term but with individuals that's not the case most of the I think half of the individual subscription at this point has left after one month and I understand that but for example if that was my target audience that would have been a very bad metric because a lot of people were leaving but you need to understand that you need to choose your audience and you need to build for your audience first even though if an individual developer comes to me and says I actually want to have a CD key I understand that if I do that it will damage the I will not be able to attract my target audience well and the only way from that is to say uh you know our tool is for teams not for individual developers so sorry that won't be available for you that's like the best answer I can come up with because again changing the tool for not your target audience will most likely I guess this comes to the priority for the product development right so you definitely when you get your product you know somehow is recognized by developers or your your customers so then a lot of feedbacks come a lot of like requests comes then you need to start prioritizing you need to start like for product development is actually a very complex area let's say it's not my expertise whatsoever but so priority and like putting some of your customer that is giving you the most probably revenue is making sense to be honest I totally I think uh relate with this code that you mentioned in the past I also had like similar kind of Entrepreneurship let's say uh life at some point and I I went through this like quite deeply so I know in many times you need to disappoint people and you know it's not very nice especially if if you as a Founder that you don't want to disappoint people like it's hard for you to say no hey it's going to be super bad day when you you say oh I need to turn like I need to actually prioritize something else even though I like to do this but then I have to say no you know which is which is very hard dimitry I think I want to ask you the last question for the interview and I guess this is going to be a question of many many folks who are going to watch us or listen to us as I said I myself I I would love to see myself one day like a founder or entrepreneur one more time and I know it's challenging I know it's it's hard I know that there are lots of bumps on the way and I know that you have also had this situation and you are still having that you are still like building your product building your business slowly if you want to give an advice to someone like me who wants to build a business who wants to become like an entrepreneur who wants to develop a product who wants to sell a SAS service or whatever what uh kind of piece of advice you can give us let me think because I that's that's a very complex question some people don't actually need any advice from me I think they just need to act that's do my only advice is to maybe this is an advice just don't think I mean no it's not don't think it's think and act but don't forget to act just just thinking is not enough that's that's for I think some people just they know what they need to do but for some reason external or internal they're just not acting on that I understand that it's risk it's very scary and it's basically stepping into nowhere and you need to you actually need to wait the chances of you succeeding they usually not high they usually very low but you still need to approach that like mindfully because doing that mindlessly would probably lead to more problems for you later on but if you approach it mindfully and you actually see how it can work acting on that is really important for those who are just ready to act but not acting right now I'm just say try or assess the reality of it is either throw it away or try because in the state of I want but something stopping me is the I think the worst here it will drain you and it will also stop you from doing things so you need to decide and for other people I think it's really important to ask yourself a lot of questions first of all yourself whether you ready to go into that like because it's uh some people develop I would say habit they just do their work without actually putting a lot of effort and they kind of get used to that that just they do their work and then they just do other things in life that they enjoy so intership in preneurship is a different type of Journey you need to be fully committed because the chances are of you failing much higher a lot higher than chance of you're succeeding and you need to have each chance like every chance that you can have to succeed you need to use it includes a lot of effort no weekends late evenings sacrificing time with your family Etc it includes a lot of sacrifices just to get better chance it's not even to win it's to get better chance that's really important so you need to ask yourself questions about whether you're ready to go that way actually ready and you need to understand you personally want problem you want to solve but there are people who who want this problems actually solved because some people end up innovating and solving problems that does not really exist or doesn't really bother other people and it is also like a problematic situation to be in especially if you love the thing that you do but you see that nobody actually uses that for some products you just need more time to people to recognize to understand to see and you also need to adapt of course but for some products it's just dead end that happens you need to be able to recognize the difference between the potential and the dead end there are other a lot of other questions for audience for whom You're Building how much they want to pay whether they interested so you need to start this question questions around about basically everything and answering those questions will lead you to uh clear understand it whether it's wor trying or not trying or wor not trying at all and after that as I said for the first group you just need to take the decision either you go in with it or not and it will probably most probably be a downgrade in your in your like quality of life because for me for example I'm boot straing DCM I don't have any Investments Etc to strapp in the company is really hard and for the first six months I was not getting any revenue from it at all it was just working working working working and without any result and you need to be ready to that your quality of life would get lower that the Journey might take you years probably has no completion might not have any completion at all you'll be just doing it forceable future and you need to kind of ask yourself and understand the process and conent side side on the whether you're edit or not so yeah um I think that's it's not I think it's actually a relatively acable actionable advice especially for people who are interested you need to understand a lot of different things and actually you need to ready another think is really important you need to be ready to say to forget the word it's not my job when you're a f founder and especially if you are alone for example you have no access to venture capital or to hire a team everything is your job and everything that you do wrong or bad is your problem to solve you need to understand that you need you need to change you need to learn things you need to understand how things work and change yourself and then to unblock the development of your thing if you don't kind of work on yourself and understand that everything is your problem especially when it comes to product development to building the thing you won't get far again because nobody here to save you nobody here to cheer cheer up for you it's all your journey it's like you need to act on every problem that that that appears cool we thank you very much for I really enjoyed our conversation to be honest I didn't even count how long we're talking and then suddenly it's over 1 hour and very nice to talk to you about this and I know a lot of folks are going to relate with what you said and a lot of them actually want to try to become like an entrepreneur or having their own product and like selling a product I guess there's a lot of things that we have not covered or discussed about this journey of course and I want you to come back one more time or maybe a couple of more times just talk about you know your experience and let's let's talk about this but then as the final section of this interview a closing word what do you want to tell us anything Mike is yours I think one of the important building building your thing also helps you find like-minded people in the community in for example for me it's in the community and outside of the the community that actually help you become better in what you're doing and those people become like a part of because for example in my case a lot of users especially first teams that converted from free version to paid there were people who I had good relationships and I admire them as people and I like them as people and I think building those relationships with them despite their them using the product or not using the product was was a great exper great great experience I'm happy to have these people as friends people who I can just write like in telegram or in Discord or on Twitter just saying hey how you doing how what what do you think about the product how was your day ETA and I'm really happy to have these people around and uh in really dark days in really dark days I always remember that even though if everything goes like sou let's say that you still have these connections this people who you shareed these moments of discussing the thing that you both kind of like they like it as a from the user standpoint you like it from the developer stand point that is worth something even though if everything else goes F so you're not just going to Journey alone but you are also finding people that uh long-term people let's say that that people are here for you and you are here for them and it's is also like an important part so if he wants to contribute to to the community that's what also is a part of the contribution to the community you will find people who motivate you who help you who you start to admire for some things who who are your friends long-term friends so again try the thing speak with the people and I'm think that you just need to again trying is the core thing on your journey you will meet different people you make different decisions and uh you end up somewhere these new people new new friends these new skills these new or another view on the world itself on the process on the tool on everything it will help you grow so if you kind of tired of repetitive life trying that trying that can help you grow and meet other amazing people around you because actually a lot of people trying to do something with their life and like trying to contribute to community to some way and that's sharing what you have is one way way to find kind of meet them finally so that's and that's force a lot thank you for coming to the show and sharing your experience and your valuable lessons that you've learned with us thank you thank you for having me and if I'm actually if anyone wants to ask any questions I'm I'm ready to help just feel free to reach out for example on Twitter and if you have a relative questions towards the overall like product development how this how that I'm happy to at least help you but please also keep in mind that not all of my experience is transferable and for some decisions you some decisions you need to take on your own and they might not my experience might just might not work for you keep that in mind and thank you again thank you for having me I will leave the Dimitri's contact information to the show's description below and thank you very much for watching see you next time Time by all right I think this was great I don't know if you enjoy I actually really enjoyed is still going for me so yeah
Info
Channel: Majid Hajian
Views: 331
Rating: undefined out of 5
Keywords: Entrepreneurship, business, business empire game, business tips, business tips for beginners, business tips for entrepreneurs, dart, day in the life, developer, earn money online, flutter, flutter bus booking app, flutter business, flutter saas, golang, google, google io, how to make a money, indi developer, metrics, money, programming, saas, software developer, software engineer, software engineer vs software developer, software engineering, why you should not be a software engineer
Id: jcwOfzy5in0
Channel Id: undefined
Length: 54min 4sec (3244 seconds)
Published: Sat May 18 2024
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.