Strolenati Council - The Invasion of 5.0 · Legacy archive

Lockmor 5.0 Do Over

Started by Strolen Jun 24, 2014 10 posts Locked

  1. Lockmor 5.0 Do Over

    #1
    The rewrite stalled. I learned some lessons and found a lot of problems. Then RL took over for awhile so it basically stopped.

    I have had time to think and ponder. I have worked other jobs and gained experience that I wouldn't have expected which gets me excited. I am always excited about the next thing. As much as roleplaying is my hobby, building this hobby is probably even a bit more my hobby. So love it or hate it, you are in my candyland and I like to play. We are at a point where what I want to do and what the code can do are at a crossing point. There is so much legacy code in there that it is incredibly difficult to get anything accomplished without breaking something else. "The Event" is evidence of that. It was a somewhat simple update to the submission page that had a huge impact. So now I am gun shy.

    Everything in this forum is very relevant. As are my books of notes and lists of things to fix. Too much. Too much sort of working and needs patched and too much that needs to be done that might be easy on the surface but fighting the spaghetti is getting old....and, more importantly....getting not fun. I don't like not fun. I like being excited. Excitement gets me fixing things. Learning gets me building things.

    So this is the announcement some people dread and others will be thrilled with.

    Rebuild of Lockmor 5.0 is going to be a TOTAL rewrite of the site from the ground up. NOTHING will be brought from the death. I will review my logic and allow that to help me but I am going to force a total code rewrite.

    How am I going to do that?

    I am glad you didn't ask because you don't care, but I will tell you anyway.

    Laravel + Angular JS

    Meaningless to you? Then stop reading because it will only get worse. Actually you can skip to the ===== line I made below.

    I know we talked about Django for a bit and I was on the cusp of going that way. But I don't have the excitement and drive to get into that like I do Laravel. Bottom line on that is I need to have a passion for it and I tried to like Django but I found myself continuously going back to laravel. PHP is what I was brought up on so I have a comfort and enjoyment in using it.

    The good thing is that Angular JS doesn't care what backend it uses as long as it gets the information it wants in the right format. So I think we can leverage that to our benefit when it comes to the Citadel Generators.

    Will also start a github repo for all this crap too. Laravel and Angular both use build systems (Grunt and Composer) so you can download the source and do an install for all the dependencies so it shouldn't be that hard if you are interested in helping. But all that will come slowly.

    ===============

    So what does that mean? Well, the site as you see it now will be gone. There won't be much legacy with the new site. We are adopting many of the new technology and buzzwords and when you see the new landing page I have in mind you may just have a heart attack. I am going to keep the first iteration of 5.0 VERY basic. Just the nuts and bolts that allow the site to work, concentrate the necessary features and slowly get us closer to where we want to be. There are some things that will be dropped and such, stuff that is rarely used and were setup for a particular instance. The stuff that makes fixing things hell. So back to the basics. Get a solid site that does what we need it to do...and do it well.

    Then, once we are happy with that, we can start really going with the crazy stuff again. Should be able to make it more modular so that when we do add stuff, it can be added and not embedded which is very different.

    Anyway, it will be a slow process and I will keep you updated as it continues to move forward. This won't happen for a couple months, this is just a shot over the bow to warn you. We can brainstorm basic features that we want to make sure are there. Obviously, all the writing, commenting, submission types (private, public etc) will be there, but other things that should be basic will be added...like autosaving submissions for instance! Basic things that are expected in a modern web app.

    Oh, and Angular JS, for those that don't know, is a ajax powered frontend basically. Often referred to as a SPA or single page application. So that all updates and such are instant and updated in the current view. So less page reloads and full page refreshes. The change calls the backend which sends it what it needs and it is updated in place. You won't be changing full pages like you used to. Header and footer and such, probably will only be loaded once your entire visit. Stuff in between will be updated as necessary. Once it is loaded it should be pretty fast with updates.

    Anyway. I am bringing most of it up to discuss. I am pretty firm in this direction though. Angular JS is just badass. Laravel is what I have been wanting to try for years and it is time to start over with a nice clean base using much of what I learned through the years. These things will help with next badass version of the citadel!!

  2. Re: Lockmor 5.0 Do Over

    #2
    It sounds promising, the easier it is for you (and the other code monkeys) to update and enhance things the better it is for everyone, any idea yet if there'll be a day or two of downtime during the cross over from the current site to the new one?
  3. Re: Lockmor 5.0 Do Over

    #3
    No dread here, and I would love to help with code design, especially on the database side, if you would like.
  4. Re: Lockmor 5.0 Do Over

    #4
    The big key is going to be documentation. One of the hardest parts about the main site is knowing what some piece of code does, and tracing functionality. It's one of the reasons I've never felt comfortable diving into the codebase.
  5. Re: Lockmor 5.0 Do Over

    #5
    There will be minimal downtime during the transfer, but that is a good bit of time from now.

    I will definitely need database help. I want to start with a clean slate but with all the old data. Laravel has some specific requirements for some table fields which will be very easy to update, but I always have issues moving a backup to work on.

    And finally, documentation. For the users as well as the code. YES. Will have to gird my loins to ensure I do it but I agree, it is super important and another reason the current setup is difficult to work with.

  6. Re: Lockmor 5.0 Do Over

    #6
    Fine! Fine!

    My 0.02 cents?

    Jack Holliday illustrations FTW! We need more of his awesomeness!

    And if you could bring Kate back into the fold, that would be amazing!

    I know design is not an immediate concern, but, hey, it is what makes a site stand out, you know.
  7. Re: Lockmor 5.0 Do Over

    #7
    Yes, more art!
  8. Re: Lockmor 5.0 Do Over

    #8
    I made a deal with Jack for 27 of his stock images for $129.60. All high resolution and badass. Unfortunately the catalog link is broken but that is a steal. I had an original email put together offering him over $200 for them all but never got around to finishing it. (I am bad at asking for deals) But he came up with that price and gave us a discount on top of that. Plus he is still game for continue work on other specific Citadel art.

    So will probably add this to the request for funds to help offset. I don't mind out of pocket but it all adds up.

    Anyway, excited about the new art that will be available for use!
  9. Re: Lockmor 5.0 Do Over

    #9
    All very exciting stuff!

    I find it mildly disturbing that you haven't been caught by the Python bug... however, I will be spending much more time in PHP land at work, so hopefully my familiarity with that language will improve by the time I can contribute anything worthwhile.

    Not promoting any of the specifics pieces, but you might find the Trello technology stack an interesting read.
  10. Re: Lockmor 5.0 Do Over

    #10
    I just unpacked Two Scoops of Django but I don't think I will make it there.

Strolenati Council - The Invasion of 5.0 · All categories · Guildhall