Forums » SEPHP Help and Tips

How to Become a SocialEngine Developer?

    • 5 posts
    July 28, 2020 5:12 PM EDT


    This is for the sake of maintaining my own SocialEngine website.

    I have a 3rd party plugin and 3rd party custom extension. There have been reliability issues. I don't think I can depend on third party to keep my site running all the time without issue for my users. Plus there are more custom functions I want to add. 

    I'd like to learn how to build and maintain SE plugins, extensions and themes myself. My background is designing Wordpress websites. I've just learned PHP fundamentals more thoroughly thanks to a good Udemy course. I can't find any comprehensive course on SocialEngine development though and the SE documentation is sparse.

    So I guess I'll have to piece together my own SocialEngine development course. Here's my training road map so far (below). What's off, missing, unnecessary or redundant here? I would appreciate any guidance you can offer. Thank you! 

    Also, how much training do you think it would take (hours) to learn how to make advanced SE plugins, assuming you're starting with a basic knowledge of css, html, php? 

    Road Map to Becoming a Social Engine Developer?:

    • "PHP Beginner to Master" - Udemy course (Done)
    • "Build a Social Media Site with PHP" - Udemy Course
    • "How to Build a Basic SocialEngine Plugin" - Online Tutorial
    • "Zend Framework 2: Learn the PHP Framework ZF2 From Scratch" - Udemy Course
    • Learn Netbeans IDE
      • QUESTION: would a few youtube tuts be enough? i haven't used any IDE before, just code editors
    • CSS Scaffold?
      • QUESTION: is it enough to know css or do i need a course about scaffolding if that's a thing? lol i have no idea
    • MVC Model-View-Controller
      • QUESTION: do i just need a little theory to 'get' mvc? or do i need a separate course on it? or do i need an MVC PHP course?
    • Developer process
      • QUESTION: is there any sort of course on how to develop plugins that puts it all together? like understanding how to use SDKs and IDEs and frameworks etc to go from concept to completion?


    • 73 posts
    July 28, 2020 10:51 PM EDT


    1. All tertiary producers are excellent. (Development seems to be not easy due to many limitations. I admit they are very good.)
    2. Third party writers are confused with j query, ajax and mootools. It is not used by modern developers. (This causes bugs and slows down the site.) These features are already available on the client due to web browser development.
    3. Nevertheless, customer complaints with third-party manufacturers are mostly slow. (I was satisfied. However, some problems collide with customers. I know and understand.)
    4. The development environment of SE is now an old environment. SE is trying to fix this. According to them, it is very difficult. (The timing seems to be missing due to the development of SEU and SECloud)
    5. In conclusion, you shouldn't do anything. It really is. I don't know when, but I recommend waiting for the upgrade.
    6. If third-party producers don't like it, you can communicate. This is the key to resolving complaints.
    7. If you want to learn something, don't learn SE, find something else (nodejs, anglular or react, golang, rust lalavel codeigniter....).
    8. PHP also abandoned ZF. However, no one is interested in this amazing fact. (Expect only part) PHP developers(ZF or laminas)  use forums written in Ruby. It's really funny. This is their future.
    9. If you want to study more with PHP, PHP version 8.0 will be released (planned for November 2020).


    Just do nothing. Then you will be happy.


    This post was edited by Lee KiWon at July 28, 2020 11:14 PM EDT
    • Moderator
    • 6001 posts
    July 29, 2020 4:45 AM EDT


    Great that you are making a course. Please ensure not to give out our code in any way. It isn't allowed per the license.

    Here is my own tutorial for making a basic plugin but you cannot copy it. If you need it to help you learn, that's fine. We are on Zend 1. So zend 2 won't help. We are updating it with a custom update for v6.

    There are development guides in the learning center that might help. Link to learning center is in the top of this site. Those tuts go over the mvc, sdk, etc and even have tips for how to develop on it, including links to some good tuts.

    I used to use netbeans but then found phpstorm to be much better. I still have netbeans but if you can get phpstorm, try it. 

    Time involved? Years. To be really good it takes years. You will want to know how to make your plugin light, fast, secure (very important), etc. As this is PHP, there is no easy way to actually fully delete plugins either. Not in any script I've tried. Not even wordpress. So think about that too. Make sure you don't do source edits or database edits in your plugins. This breaks stuff for clients.

    I hope you do well in your learning venture. It's fun to learn. I enjoy making the small free plugins that I make via ScriptTechs and BryZar. 



    We (SE) are trying to improve. I only became project manager over SEPHP a few months ago. Laminas is actually interesting and something we are looking at for the future. We looked at removing moo and it is so ingrained we cannot just remove it as that would disrupt everyone's site for upgrading. We need to keep it and then bypass it with newer stuff. That will come after v6 is released. We already actually added the functionality to do so in v5. It's just a matter of painstakingly bypassing moo for the other stuff, one area at a time. Doing it this way will allow clients to still use moo when they need to for their plugins and take advantage of the new stuff.

    We have a lot of plans. There is hope for the future of SEPHP and our client's dreams. 

    This post was edited by Donna at July 29, 2020 5:39 AM EDT
    • 178 posts
    July 29, 2020 11:39 AM EDT

    Donna - is there a seperate developers forum/documentation site, or is the documentation site and this forum all there is for developers?

    • Moderator
    • 6001 posts
    July 29, 2020 12:10 PM EDT

    There is just this at the Learning Center, this community and then that one that I made. There may be others but be careful sharing any links as some are pirate sites and we don't allow that to be shared.

    • 178 posts
    July 30, 2020 9:06 AM EDT

    I thought I would add that the manual for Zend Framework 1.12, on which Social Engine is based is available here.


    **edited by admin to fix link to open in new tab

    This post was edited by Donna at July 30, 2020 11:38 AM EDT
    • 178 posts
    July 30, 2020 10:02 AM EDT

    I've also just realised that you can create basic documentation for Social Engine by running phpDocumentor on the Social Engine folder (with your plugins unzipped in to it, if you want them documented as well).


    **edited by admin to fix link to open in new tab

    This post was edited by Donna at July 30, 2020 11:39 AM EDT
    • 5 posts
    August 10, 2020 6:57 PM EDT

    Thanks for the feedback and tips! 

    I agree about 3rd party developers. So far everyone I've worked with has been great! 

    Only 'problem' is that the 3rd party SocialEngine plugins don't get updates quite as often as like a major Wordpress plugin for example. Some of those wp plugins get constant updates. Of course it isn't fair to compare because Wordpress has many times more users and Some of those plugins are multi million dollar ventures unto themselves so they can afford to make constant updates. 

    But nonetheless it's a problem for me. These 3rd party plugins often don't get updated until there are already site-breaking issues which can cause fallout, lost users, bad reviews, etc... I believe the only way I could truly keep the site up all the time is to learn how to do the advanced work myself. 

    That, as well as custom development are the reasons I want to learn as much as I can about building and maintaining a SocialEngine site. Again I'm just putting a 'syllabus' together for my own training.

    Thanks again!

    • 178 posts
    August 11, 2020 9:47 AM EDT

    @DaveBush - This is exactly what I am doing with my site. I mainly make source edits, but I am going to learn to make plugins in due course so I can implement my 'hacks' properly.