Getting started as a developer in EspoCRM...

Collapse
X
 
  • Time
  • Show
Clear All
new posts

  • TomasSamohyl
    replied
    Hey, I'm new in EspoCRM, i had to make module which would add a field called "Find contacts" to the original dropdown menu, with the fact that when that field is clicked, all contacts with the same email will be displayed and then their first and last name will be returned to the user. Do you know how to do that?

    Leave a comment:


  • esforim
    commented on 's reply
    Haven't been update in a while as I don't have time to look at forum recently so I might have missed on many things.

  • DamienOD
    commented on 's reply
    WOW Thank you espcrm and everyone who contributed to the WIKI.
    as a total Newb to coding this wiki is SO valuable.

  • rabii
    commented on 's reply
    i understand your point, when i started i relied on documentation but tbh it was the community also that helped a lot. beside you can search code base and learn from it, anything you want you can find in codebase. Anyway just hope you are still part of this amazing community and such a wonderful product and we are here to help, if you need anything let us know we will help for sure.

  • item
    commented on 's reply
    Hi esforim,
    emillod too have make many video for community, don't forget him.
    telecastg, we know him

  • esforim
    replied
    One purpose of "open-source" is it "open" for people to make edit, change, contribution, etc. If you find these mistake and only keep it to yourself then only yourself will know about it, and the next person MrsMaxDau who do the same thing as you do come along and "keep it to themself". A vicious cycle of nothing ever get updated.

    If you find an issue, and a solution is now known, perhaps the idea of "sharing is caring" is importantly now.

    There is no issue if you want to share your opinion if it can be validated, that how I read what Yuri trying to say. This forum isn't being filter/block/required moderation before you post, you can write anything you want except for 'spam'.

    I am no way part of the EspoCRM team, and I do not have any coding skill. So whenever someone like yourself that can code started using EspoCRM it is very good in my opinion, that is a potentially good news that EspoCRM may have newer feature, bug fixed, and contribution to the system.

    I create this "wiki" here to collect thread that I find interesting or maybe useful, perhaps you can consider reading it to get an idea, especially the code part. telecastg (user) posted quite a few of his research (not sure if he have updated to v7 yet) which will get you an idea on what to do or where to go. But that is only 1 person, there is many other hidden coder that never do this, you can find them in the "Paid Job" section where that is the only time they post.

    Contribute to o-data/EspoCRM-Learning-and-Design development by creating an account on GitHub.
    Last edited by esforim; 08-09-2023, 11:25 AM.

    Leave a comment:


  • MaxDau
    replied
    I have invested thousands of Euros in EspoCRM to find a suitable software solution. The money was simply thrown out the window. Hubspot charges $1,200 for custom objects and that every month. With a few more users and a little more scope, I am over $1,700 per month. And it's just not worth it. If there were an extension that would help me, I would buy it. If there were a proper documentation, I would also buy it. I (personally) would not buy videos or video courses now. When I am looking for something, I scan texts for keywords and look at code examples.
    I have no problem at all with financially supporting such good software as EspoCRM. It's just that there is nothing available that I could buy and get added value from.

    I simply object to the small mistakes. Yurri does not see them. If you know the code and how the system works, you overlook the small mistakes and understand the examples without problems. But if you are new or are just getting started, you make mistakes because you have taken them from the documentation. These are often small things. Wrong paths for imports, wrong capitalization or similar. Small things that are not a problem if you know the system. For beginners, it breaks motivation if information from the documentation (copy & paste) does not work.

    Example:
    application/Espo/Services
    application/Espo/Modules/{moduleName}/Services
    custom/Espo/Custom/Services

    It was written exactly like this in the documentation. The correct capitalization was taken care of in everything. But moduleName is simply wrong. I also find the solution in the documentation under Modules:

    custom/Espo/Modules/{YourModule}/ - backend (CamelCase name);

    No real problem. Just wrong.

    Another point is the "hidden" information.
    I am looking for information about already existing container services of Espo. So I click on Services. There is a link to Container Services. On one of the longest pages in the documentation, at the very bottom, the very last link at "See also", there is then a link to the list of Container Services. This link is not included in the navigation. You can only access the page via the link at the bottom.

    And the search does not work at all (for me). It costs more nerves than simply trying out code.​

    Espo is not my project and I currently do not expect to implement any further projects with Espo. The documentation does not have to be adapted for me. I just don't understand why you don't want to understand where I see the real problem. Yurri is not writing the documentation like his diary. The documentation is for BEGINNERS. For people who don't know the code and have no idea about the system. You can't write documentation with the assumption that the reader knows the system. If I know the system, I don't need documentation anymore.

    It can't be that you blame the beginner for not understanding the documentation because he doesn't know the code. That's like scolding a driving student because he can't drive yet. The documentation is the help to understand the system and not the code helps you understand the documentation.

    @yurri To be personal between us. It doesn't really matter to me if what I write upsets you. I write my experiences and impressions in my posts and not love stories to Yurri. I express my opinion. You are welcome to add your opinion to my posts. But that doesn't change my experiences that I have made.

    "Basically all complains you listed in the topic turn out to be invalid."
    You can write that if you simply don't address and ignore some points...

    ​But I am not here to argue. You can run your project as you want. Whether you value the opinions of others and just think about it instead of feeling attacked, it's up to you.

    Leave a comment:


  • item
    commented on 's reply
    Hi @telecastg,

    yes i completly agree.. i have from my boss +- 300euro/year for "formation". (it's nothing in IT but i work in no IT domain)
    i have another idea, maybe a live from youtube or another platform.. 1h of lessons, 1h of question/answer.. only avaible to subscriter.
    one time per month .. so

    I have in the past send a mail for come to Ukrain and follow a "training" .. no response ...but i think at this moment, my boss accept

    Yes documentation is very help and up-to-date.. Yuri have make big jobs.. and understand how many time consum to make all update or maintain or add new feature.
    And if someone open a "extension platform for espocrm" .. it's too a opportuinity.

    This is not a debat as you say, this is a opportuinity

    Best Regards

  • esforim
    commented on 's reply
    I suppose if you manage to figure out something, there is always the option of "posting it on forum" or doing a Pull Request on the Documentation files.

    I have a whole thread by myself to document simple stuff I learn to do here: https://forum.espocrm.com/forum/gene...crm-and-design

    It not anything fancy but there is a few "Like", so it help 1-2 people that thread it

  • telecastg
    commented on 's reply
    Write manuals for everything is a work that somebody needs to do. We can't afford such expenditures at the moment. We are not a corporation, and not a large company. The huge part of the product is based on my enthusiasm and working w/o weekends for years. Why now I need to feel sorry that I didn't document enough? Such posts annoys me.
    Perhaps this could be an area of opportunity for the development team, instead of being a constant source of annoyance and argumentative replies.

    Maybe it would be worth exploring the cost of hiring a qualified technical writer to produce a thorough manual, with complete samples and explanations of concepts, not assuming that the reader is already familiar with the code base, or full of technical jargon that a reader is assumed to be capable of understanding.

    This manual can be sold as a monthly or annual subscription. I believe that many other participants (at least those interested in development) would gladly pay for.

    This comment IS NOT meant as a reason to start another debate, it is a straight forward honest suggestion of a possible revenue stream for the development team.
    Last edited by telecastg; 12-22-2022, 06:40 AM.

  • item
    commented on 's reply
    Really, you must try : chatGPT
    It’s free.
    With your English, the AI can best respond.

    I have try with Cisco catalyst switch.. incredible.

    You can learn, it’s sure
    I learn too here : https://phptherightway.com/
    Last edited by item; 12-20-2022, 11:45 AM. Reason: https://phptherightway.com/

  • yuri
    replied
    Learning from source is normal. It's a skill that every programmer should develop.

    Other open source CRM systems I know don't have much more detailed dev docs than Espo. Your sarcasm here is inappropriate and rude.

    Basically all complains you listed in the topic turn out to be invalid. Spending 1 week not figuring out how to inject entity manager to the hook and blame the documentation. When in fact it's covered enough.

    Leave a comment:


  • telecastg
    commented on 's reply
    Thanks for this great contribution item you are absolutely correct, this AI chat can save us many hours of "code hunting" for poorly explained or undocumented features.

    It looks like it extracts code from GuiHub similar to the GitHub Copilot.

    By the way esforim "IA" is correct in French (Intelligence Artificielle) but in English is "AI" Articicial Intelligence

  • MaxDau
    replied
    You know, Yurri, you are absolutely right. Because YOU have learned from the source code of other big systems, this is the normal standard for everyone else these days.

    I don't feel like discussing this any further. On the one hand you say that you have not enough time or capacity to document more, on the other hand you say that there is nothing to document at all...

    After giving it some thought, I have to agree with you. My lack of knowledge of DI is the only reason I have such problems.
    Because the huge community behind EspoCRM and the countless modules to all the apps, as they are available for other CRMs, show that THE START with the development with EspoCRM is very easy and there is no reason for criticism at all.

    In this sense: You are right and I will be quiet.​

    Leave a comment:


  • yuri
    replied
    > Conflict::createWithBody

    Such a simple methods don't require documentation. It's obvious that it creates an exception with a body. Then we see a method getBody, we see a HasBody interface. We can use IDE's 'Find Usages' to see where it's used. We will figure out that it just prints passed body to the response. That's it.

    When method is documented, it's a common practice to document what the method does. It's not usual to document how the result of the method execution can be used. It even often discouraged.

    Leave a comment:

Working...